在VC中如何获取视图窗口鼠标坐标的绝对位置X,Y

在一个带有垂直(水平)滚动条的视图窗口中,鼠标点击窗口的客户区左上角后,通过 LButtonDown()能获得 point.x = 0, point.y = 0; (这是正确的)

滚动窗口的垂直(水平)滚动条后,鼠标再次点击窗口的客户区左上角点击后,通过 LButtonDown()能获得的 仍然 是 point.x = 0, point.y = 0; (这不是我想要的)

这时我想获得的point.x 与 point.y 应该是加上垂直(水平)滚动的距离,

请问应该怎样把获得的point.x = 0, point.y = 0 转换 成整个窗口客户区的绝对 X,Y 或 怎样获取 垂直(水平)滚动的距离呢

谢谢

你的类是继承自CScrollView类对吧?那你在OnLButtonDown()函数中最开始加入如下代码:
CClientDC dc(this);
OnPrepareDC(&dc);
dc.DPtoLP(&point);
......
接下来,point中的坐标应该就符合你的意愿了!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-03-17
在WM_MOUSEMOVE消息的回调函数中获取
第2个回答  2010-03-17
GetCursorPos

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网