【发布时间】:2013-05-30 05:01:26
【问题描述】:
我想在表单上使用鼠标的坐标并计算光标与其他点之间的距离。
但我发现的代码只给你整个屏幕上的坐标.. 不是 在表格上。 我还发现您可以在屏幕坐标和表单坐标之间进行转换,但我该怎么做呢?
我还没有找到真正有效的例子
顺便说一下函数ScreenToClient说的是未定义符号hWnd...
【问题讨论】:
标签: c++builder
我想在表单上使用鼠标的坐标并计算光标与其他点之间的距离。
但我发现的代码只给你整个屏幕上的坐标.. 不是 在表格上。 我还发现您可以在屏幕坐标和表单坐标之间进行转换,但我该怎么做呢?
我还没有找到真正有效的例子
顺便说一下函数ScreenToClient说的是未定义符号hWnd...
【问题讨论】:
标签: c++builder
如果调用 Win32 API ScreenToClient() 函数,则必须为其提供HWND,例如:
POINT Pt = Mouse->CursorPos;
Pt = ::ScreenToClient(this->Handle, &Pt);
不过,VCL UI 控件也有自己的ScreenToClient() 方法继承自TWinControl,例如:
TPoint Pt = this->ScreenToClient(Mouse->CursorPos);
【讨论】:
Windows 添加到您的uses 子句中?