光标位置

来源:互联网 发布:dz3.4论坛源码整合 编辑:程序博客网 时间:2024/06/11 09:03

检索通知消息中的光标位置

有时,当公共控件收到某些通知消息时,确定光标的当前位置很有用。例如,当公共控件收到 NM_RCLICK 通知消息时,确定当前光标位置很有帮助。

有一个通过调用 CWnd::GetCurrentMessage 完成此工作的简单方法。但是,此方法只在发送消息时检索光标位置。因为发送消息后光标可能已经移动,所以必须调用CWnd::GetCursorPos 获取当前光标位置。

注意   应该只在消息处理程序中调用CWnd::GetCurrentMessage

将以下代码添加到通知消息处理程序体中(在此例中为 NM_RCLICK):

CPoint cursorPos;cursorPos.x= GetCurrentMessage()->pt.x;cursorPos.y= GetCurrentMessage()->pt.y;

此时,鼠标光标位置存储在 cursorPos 对象中。


(coming from msdn)