(
因为想在菜单栏添加单击事件,但是菜单貌似只有子菜单可以添加事件。
所以想获取鼠标点击的坐标 做相应的处理。)
处理OnLButtonDown可以获得鼠标点击坐标 但是不能获取 菜单栏 标题栏等地方的坐标。
9 个解决方案
#1
WIN32中鼠标点击消息结构中有点击时的x y坐标值
#2
但是那个如果点击的是菜单栏和标题栏 消息就不响应了啊
#3
在定时器或线程里 一直获取鼠标坐标(GetCursorPos)和窗口所在位置 如果鼠标在窗口内且发生了点击事件 do something
#4
WM_NCLBUTTONDOWN 有NC的消息表示非客户区的
#5
用这个可以获取相对桌面的坐标 请问如何获取相对于窗口的坐标呢
#6
screentoclient()
#7
GetCursorPos获取绝对坐标,screentoclient()转换为需要的相对坐标!
#8
楼上几位都讲的比较全了。
注意screentoclient和clienttoScreen的转换。菜单弹出是需要屏幕坐标的。
注意screentoclient和clienttoScreen的转换。菜单弹出是需要屏幕坐标的。
#9
你的设计初衷是想在按下鼠标左键后获得鼠标位置。
问题的根本原因并不是鼠标位置不好获取(获取鼠标位置很容易),而是菜单标题栏无法响应LButtonDown消息事件,导致无法得知何时来获取这个坐标。
局部钩子HOOK鼠标LButtonDown获取坐标。
问题的根本原因并不是鼠标位置不好获取(获取鼠标位置很容易),而是菜单标题栏无法响应LButtonDown消息事件,导致无法得知何时来获取这个坐标。
局部钩子HOOK鼠标LButtonDown获取坐标。
#1
WIN32中鼠标点击消息结构中有点击时的x y坐标值
#2
但是那个如果点击的是菜单栏和标题栏 消息就不响应了啊
#3
在定时器或线程里 一直获取鼠标坐标(GetCursorPos)和窗口所在位置 如果鼠标在窗口内且发生了点击事件 do something
#4
WM_NCLBUTTONDOWN 有NC的消息表示非客户区的
#5
用这个可以获取相对桌面的坐标 请问如何获取相对于窗口的坐标呢
#6
screentoclient()
#7
GetCursorPos获取绝对坐标,screentoclient()转换为需要的相对坐标!
#8
楼上几位都讲的比较全了。
注意screentoclient和clienttoScreen的转换。菜单弹出是需要屏幕坐标的。
注意screentoclient和clienttoScreen的转换。菜单弹出是需要屏幕坐标的。
#9
你的设计初衷是想在按下鼠标左键后获得鼠标位置。
问题的根本原因并不是鼠标位置不好获取(获取鼠标位置很容易),而是菜单标题栏无法响应LButtonDown消息事件,导致无法得知何时来获取这个坐标。
局部钩子HOOK鼠标LButtonDown获取坐标。
问题的根本原因并不是鼠标位置不好获取(获取鼠标位置很容易),而是菜单标题栏无法响应LButtonDown消息事件,导致无法得知何时来获取这个坐标。
局部钩子HOOK鼠标LButtonDown获取坐标。