下面是同样的四段程序, 但分别使用了不同的三种消息结构: TWMMouseMove、TWMMouse、TMessage
unit Unit1;

interface

uses
  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;

interface

uses
  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;

interface

uses
  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.

posted on 2008-10-28 18:25  万一  阅读(2860)  评论(4编辑  收藏  举报