下面是同樣的四段程式, 但分別使用了不同的三種訊息結構:
TWMMouseMove、TWMMouse、TMessage
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;type TForm1 = class(TForm) protected procedure WMMouseMove(var Message: TWMMouseMove); message WM_MOUSEMOVE; end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.WMMouseMove(var Message: TWMMouseMove);var x,y: Integer;begin x := Message.XPos; y := Message.YPos; Text := Format('%d, %d', [x,y]);end;end.
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;type TForm1 = class(TForm) protected procedure WMMouseMove(var Message: TWMMouse); message WM_MOUSEMOVE; end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.WMMouseMove(var Message: TWMMouse);var x,y: Integer;begin x := Message.XPos; y := Message.YPos; Text := Format('%d, %d', [x,y]);end;end.
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;type TForm1 = class(TForm) protected procedure WMMouseMove(var Message: TMessage); message WM_MOUSEMOVE; end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.WMMouseMove(var Message: TMessage);var x,y: Integer;begin x := Message.LParamLo; y := Message.LParamHi; Text := Format('%d, %d', [x,y]);end;end.