随笔 - 2146  文章 - 97 评论 - 11767 trackbacks - 253

//获取鼠标在窗体中的当前位置
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  str: string;
begin
  str := Format('%d,%d',[X,Y]);
  ShowMessage(str);
end;

//用 GetCursorPos 获取的是鼠标相对与屏幕的位置 var ps: TPoint; str: string; begin GetCursorPos(ps); str := Format('%d,%d',[ps.X,ps.Y]); ShowMessage(str); end;
//但通过 ScreenToClient 方法可以转换过来 var ps: TPoint; str: string; begin GetCursorPos(ps); ps := ScreenToClient(ps); str := Format('%d,%d',[ps.X,ps.Y]); ShowMessage(str); end;
// ClientToScreen 函数 procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); var str: string; ps: TPoint; begin {显示当前鼠标位置, 这是相对于窗体的} str := Format('%d,%d',[X,Y]); ShowMessage(str); {通过 ClientToScreen 函数可以得到当前鼠标相对于屏幕的位置} ps := point(X,Y); ps := ClientToScreen(ps); str := Format('%d,%d',[ps.X, ps.Y]); ShowMessage(str); end;
posted on 2008-01-22 17:49  万一  阅读(...)  评论(...编辑  收藏