Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > SendMessage, PostMessage в TDataModule


Автор: X-Vlad 17.3.2008, 12:03
Привет всем.

Вопрос:

Как послать сообщение в TDataModule?

у него нету хендла.

Код

SendMessage/PostMessge(что тут?, ..., 0, 0)

Автор: EvilsInterrupt 17.3.2008, 12:19
Раз для SendMessage\PostMessage нужен хэндл, а им обладают токо потомки TWinControl`a думаю в потомок TDataModule никак нельзя вашим способом передать, но TDataModule имеет:
Цитата

Dispatch (public)  Calls message-handling methods for the object, based on the contents of the Message parameter. 

Автор: X-Vlad 17.3.2008, 12:31
ok. вопрос следующий как послать внутри апликации меседж всем формам?

в данный момент я просто пробегаю в цикле по Application.ControlCount ну и соответственно если контрол TForm or TFrame то посылаю сообщение. 
Может  есть какойнить универсальный способ? Мне этот не очень нравится.

Автор: EvilsInterrupt 17.3.2008, 12:38
X-Vlad, 
У потомков есть TWinControl.Broadcast который шлет сообщение всем своим ... вобщем справка

Автор: X-Vlad 17.3.2008, 12:50
Цитата

У потомков есть TWinControl.Broadcast который шлет сообщение всем своим ... вобщем справка 


это я знаю.

Цитата

Sends a message to each of the child controls of the windowed control.

procedure Broadcast(var Message);

Description

Use Broadcast when you want to send the same message to each of the child controls contained within the windowed control. Specify the message to be passed as the value of the Message parameter.


отсылает сообщение всем контролам на форме.. но не всем формам апликации

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)