> あるいは,TApplicationEvent の OnMessage イベントで処理するか,
Delphi 5 で実装された ApplicationEvents コンポーネントを使用した例です.
OnMessage イベントを作成します.
コンポーネントパレットの [Additional] タブにあります.
type
TForm1 = class(TForm)
Memo1: TMemo;
ApplicationEvents1: TApplicationEvents;
Button1: TButton;
procedure ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
//Buttopn1で,かつメッセージがWM_MOUSELEAVEの時だけ処理
if Msg.hwnd = Button1.Handle then begin
if Msg.message = WM_MOUSELEAVE then begin
Memo1.Lines.Add('Leave');
end;
end;
end;
他の方法が必要なら,いくらでもコード書きますよ.
サンプルプログラム集に,いくつも参考コードがあるので,たいして時間はかかりません.
次はサブクラスを使用したコードといきますか ?
|