我想mouse.cursorpos是相对于整个Screen的座标点,而OnMouseMove的X,Y则是相对于Form的作标点。
可以通过
Form1.ClientToScreen或者ScreenToClient进行座标转化。
可以通过
Form1.ClientToScreen或者ScreenToClient进行座标转化。
解决方案 »
- 怎么列出delphi project里面所有的form
- delphi的类变量和VB的有何不同?
- 请问:delphi中,参数长度可否大于255个字节??我写的存储过程,里面一个参数,长度为varchar(1000)
- 如何向打开的网页中的 元素input赋值?
- 关于过滤关键字敏感字的问题,征集解决方案!
- 我做了一个Delphi+ADO+Oracle9i的档案管理系统,如何让程序能在其他机器上运行?急!!!
- 一个数据库操作引发异常的问题,SOS 在线等待
- 再问一个,如何判断在编辑框里输入的是有效的日期格式?
- 如何定义热点??
- 请帮我构造一个sql语句
- 用過Dev Express控件的請幫忙﹐如何動態邦定dxDBGrid來顯示數據﹖
- 简单问题!!!
2.ScreenToClient
2.转换后换要用x-control.left
y-control.top
Y: Integer);
var
p:Tpoint;
begin
Form1.Canvas.TextOut(0,0,inttoStr(X) + ' '+ inttoStr(Y));
Form1.Canvas.TextOut(0,40,inttoStr(Mouse.CursorPos.X) + ' '+ inttoStr(Mouse.CursorPos.Y));
p:=ScreenToClient(mouse.CursorPos );
Form1.Canvas.TextOut(0,80,inttoStr(p.X) + ' '+ inttoStr(p.Y));
end;
你可以放一个TreeView在窗体中,然后对MouseDown