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 hook api

Delphi 安卓原生的toast温柔提示

Delphi chart组件,chart控件用法

Delphi app检测智能手机震动

Delphi 统计中英文字个数的例子

Delphi 读取网上的文本文件

Delphi 判断字符是否是汉字

Delphi 从indy9升级到indy10时idtcpserver的变化

Delphi 读取png base64编码文件生成图片

Delphi rect()

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



打赏

取消

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

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

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

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

评论

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