Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

SendMessage [D6, WinXP]


FRecon ©   (2002-06-30 01:43:00) 

Люди, а поясните пожалста, что за ф-ия SendMEssage и как ей ползоваться?


Игорь Шевченко   (2002-07-01 17:33:00) [1]

MBo © (01.07.02 17:07)


> сообщение, посланное SendMessage, НЕ ставится в общую очередь
> Windows, а посылается непосредственно указанному элементу


Оно ставится в Send-очередь, если послано окну другого потока.


MBo   (2002-07-01 17:07:00) [2]

SendMessage посылает сообщение ЛЮБОМУ окну (указывется его handle), в том числе и оконным элементам своей формы/программы (тогда например, edit1.handle). Его параметры - window handle, номер сообщения (предопределенные константы, например, WM_PAINT, или пользовательские, определяемые программистом, например, WM_USER+100), и два числа, несущие разную функц. нагрузку в зависимости от типа сообщения, в некоторых они игнорируются, в некоторых передается, например, номер строки ListBox и т.п., или через них может передаваться адрес строки или сложной структуры
(с приведением к Integer). Главное отличие от PostMessage - сообщение, посланное SenMessage, НЕ ставится в общую очередь Windows, а посылается непосредственно указанному элементу, т.е. обрабатывается сразу, без задержки, за счет этого может вернуть результат, однако есть сообщения, которые обрабатываются ТОЛЬКО при выборе из очереди. Аналог в VCL- TWinControl.Perform


DeepProg   (2002-07-01 16:27:00) [3]

Эта функция используется для управления окном внешнего приложения. Ее действие заключается в отправке команды этому окну(Msg:Cardinal). Пример:
SendMessage(FindWindow("SciCalc","Калькулятор"),WM_CLOSE,0,0);- функция отправляет окну приложения Windows (Калькулятору) команду "закрыть".


Наверх

Титульная страница Поиск, карта сайта Написать письмо