Показать сообщение отдельно
  #2  
Старый 30.12.2007, 21:04
Аватар для Oleg
Oleg Oleg вне форума
Активный
 
Регистрация: 29.11.2007
Адрес: Оренбургская обл., Россия
Сообщения: 261
Репутация: 15
Восклицание Пример

Вот статья из DelphiWorld:
Код:
 const
   MY_MESSAGE = WM_USER + 4242;

   type
   TForm1 = class(TForm)
     Button1: TButton;
     procedure Button1Click(Sender: TObject);
     // Handler that receive the Message 
    procedure MessageReceiver(var msg: TMessage); message MY_MESSAGE;
   end;

 var
   Form1: TForm1;

 implementation

 {$R *.DFM}

 procedure TForm1.Button1Click(Sender: TObject);
 var
   txt: string;
 begin
   txt := 'Hello World';
   SendMessage(Form1.Handle, MY_MESSAGE, 0, DWORD(PChar(txt)));
 end;

 // To receive this custom Message that is addressed to form1.handle 
// you need a message handler. 

procedure TForm1.MessageReceiver(var msg: TMessage);
 var
   txt: PChar;
 begin
   txt := PChar(msg.lParam);
   msg.Result := 1;
   ShowMessage(txt);
 end;
 end.
Но между двумя формами не получается(пересылая сообщение 2 форме и находя её идентификатор с помощью:

Код:
var
wnd:hwnd;
begin
Wnd := FindWindow(nil,'Form2');
txt := 'Hello World';
SendMessage(wnd, MY_MESSAGE, 0, DWORD(PChar(txt)));
А ОБРАБОТКУ !!!!
делаю через
Код:
procedure TForm1.MessageReceiver(var msg: TMessage);
Так нужно делать ?
Ответить с цитированием