Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

SendMessage

div.main {margin-left: 20pt; margin-right: 20pt}

Гайдар Магдануров

SendMessage

Здесь я приведу сообщения, которые я хотя бы когда-то использовал.

Общий вид:

'Функция:

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, ByVal lParam As Any) As Long

'Константы

Const ...

Щелчок по кнопке (Const BM_CLICK = &HF5)

RetVal = SendMessage(Command.hWnd, BM_CLICK, 0, 0)

Примечания: не всегда работает, если окно находится в неактивном состоянии, поэтому желательно сделать окно активным, до использования этой функции.

Получения количества элементов в списке ComboBox (Const CB_GETCOUNT = &H146)

RetVal = SendMessage(Combo.hWnd, CB_GETCOUNT, 0, 0)

Примечания: возвращает число элементов.
 

Добавление элемента списка в ComboBox (Const CB_ADDSTRING = &H143)

RetVal = SendMessage(Combo.hWnd, CB_ADDSTRING, 0, "Новый элемент")

Примечания: в случае успеха возвращает номер позиции в списке.

Удаление элемента списка из ComboBox (Const CB_DELETESTRING = &H144)

RetVal = SendMessage(Combo.hWnd, CB_DELETESTRING, 1, 0)

Примечания: возвращает количество оставшихся элементов в списка ComboBox.
 

Получение текста из элемента списка ComboBox (Const CB_GETLBTEXT = &H148)

cbtextlen = SendMessage(Combo.hWnd, CB_GETLBTEXT, cbindex, cbtext)
 

Примечания: получение текста cbtext = Left(cbtext, cbtextlen)

Получение выделенного текста из текстового поля (Const EM_GETSEL = &HB0)

retval = SendMessage(Text.hWnd, EM_GETSEL, txtstart, txtend)
 

Примечания: получение текста - If txtstart<>txtend then txttext = Mid(Text.Text, txtstart + 1, txtend - txtstart)

Отмена последней операции редактирования (Const EM_UNDO=&HC7)

RetVal = SendMessage(Text1.hwnd, EM_UNDO, 0, 0)

Примечания: работает и для текстовых полей, и для полей RTF текста  (здесь работает несколько раз, если вы используета MS RichTextBox контрол)

Системные команды (Const WM_SYSCOMMAND = &H112)

RetVal = SendMessage (Form.hwnd, WM_SYSCOMMAND, Oter_Const, 0)

Список сообщений:

Const SC_CLOSE = &HF060 Закрывает окно
Const SC_CONTEXTHELP = &HF180 Отображает курсов - Вопросительный знак
Const SC_HSCROLL=&HF080 Прокрутка горизонтальной полосы прокрутки
Const SC_VSCROLL=&HF070 Прокрутка вертикальной полосы прокрутки
Const SC_MAXIMIZE = &HF030 Разворачивает окно
Const SC_MINIMIZE = &HF020 Сворачивает окно
Const SC_MOVE = &HF010 Перемещает окно
Const SC_RESTORE = &HF120 Восстанавливает окно до нормальных размеров
Const SC_SCREENSAVE = &HF140 Запускает хранитель экрана (default)
Const SC_SIZE = &HF000 Изменяет размеры окна
Const SC_TASKLIST=&HF130 Кнопка Пуск (Start)

Примечания: функция всегда возвращает ноль.



  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2024
    Реклама на сайте