delphi 获取鼠标当前位置的相对坐标


本文整理自网络,侵删。

 delphi 获取鼠标当前位置的相对坐标
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

type
TForm1 = class(TForm)
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
procedure FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormClick(Sender: TObject);
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

//方法一: 使用 OnMouseDown 事件的参数:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
//参数中的 X,Y 就是当前鼠标所在位置的坐标
//譬如显示看看:
Text := Format('OnMouseDown: x=%d; y=%d', [X,Y]);
end;

//方法二: 使用 OnMouseMove 事件的参数:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
//参数中的 X,Y 就是当前鼠标所在位置的坐标
//譬如显示看看:
Text := Format('OnMouseMove: x=%d; y=%d', [X,Y]);
end;

//方法三: 使用 OnMouseUp 事件的参数:
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
//参数中的 X,Y 就是当前鼠标所在位置的坐标
//譬如显示看看:
ShowMessage(Format('OnMouseUp: x=%d; y=%d', [X,Y]));
end;

//方法四: 使用 API 函数 GetCursorPos:
procedure TForm1.FormClick(Sender: TObject);
var
pt: TPoint;
begin
GetCursorPos(pt); {这是获取的相对于屏幕的坐标}
pt := ScreenToClient(pt); {转换成本地坐标}
ShowMessage(Format('API 函数 GetCursorPos: x=%d; y=%d', [pt.X, pt.Y]));
end;

end.

相关阅读 >>

Delphi indy smtp 发送邮件

如何将string变量赋值给pchar变量

Delphi 关闭icesword等

Delphi webbrowser选中文本操作 设置webbrowser的内容

Delphi query1 导出csv txt

Delphi 批量生成 a到z 字母

tsqlconnection连接mysql(utf8)的问题

Delphi 2009 之 tstringbuilder 类[4]: insert 与 remove

Delphi 控制台关闭指定窗口

Delphi 返回整数的四种情况

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...