在某个控件上单击后,我想知道光标在控件上的相对位置。
我用GetCursorPos得到光标相对于屏幕的位置后,再减去窗体相对于屏幕的位置及控件相对于窗体的位置,似乎还应该减去窗体标题栏的高度及窗体边框的厚度,但不知道怎么得到窗体标题栏的高度及窗体边框的厚度。
我用GetCursorPos得到光标相对于屏幕的位置后,再减去窗体相对于屏幕的位置及控件相对于窗体的位置,似乎还应该减去窗体标题栏的高度及窗体边框的厚度,但不知道怎么得到窗体标题栏的高度及窗体边框的厚度。
解决方案 »
- 求一sql语句。
- 急请教关于读BIOS以此查看系统的配置信息,小弟初学Delphi ,大家帮帮忙,
- 请教一个查询数据表中某个字段的值出现数量前3位的SQL写法!?着急。在线等!!!
- Image1Click如何查找文件
- 高手请进...
- 让ToolBar中的按钮即显示图标又显示文字时,如何改变图标和文字的排列方式?
- 在进程A中怎样向外部进程进程B中发送鼠标单击消息?
- 选择dbgrid中的任意几列
- Ado链接Access数据库,存取图片,关于几种“流”
- 请赐教!delphi中API GETVOLUMEINFORMATION 的使用。
- 请问条形码code93 Extend的编码规则哪个知道,能否提供点资料等
- 一个窗体的小问题???
ScreenToClient
Y: Integer);
var
p ,t: TPoint;
begin
GetCursorPos(p);
t.X := Button1.Left;
t.Y := Button1.Top ;
t :=ClientToScreen(t);
Caption := Format('%d;%d',[p.X-t.X,p.y-t.y]);//也可以用 ScreenToClient把屏幕座标转换称客户区座标后来对比
//
end;