如何解决我如何获得窗口光标位置
这成功地检索了屏幕坐标,但我希望它显示相对于鼠标悬停的特定窗口的坐标:
POINT p;
if (GetCursorPos(&p))
{
std::cout << p.x << "," << p.y << std::endl;
//cursor position now in p.x and p.y
}
我可以修改代码来做到这一点吗?
解决方法
是的,这正是 ScreenToClient
所做的:
if (not ScreenToClient(window,&p)) { /* handle error */ }
如果这是您自己的窗口,您还会收到 WM_MOUSEMOVE
消息,您可以使用这些消息来跟踪光标位置,而无需对其进行轮询。根据您的需要,甚至还有 WM_MOUSEHOVER
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。