我需要检测用户在表单及其所有子控件上移动鼠标以及离开表单的情况。我尝试了表单的
由于大部分表单被各种子控件占据,因此客户区域可见性较小。这意味着如果我移动鼠标得太快,鼠标移动将无法被检测到,即使鼠标在表单内部。
例如,我有一个停靠在底部的文本框,在桌面和文本框之间只有很小的边框。如果我迅速将鼠标从底部移动到文本框中,鼠标移动不会被检测到,但鼠标实际上是在文本框内部,也就是在表单内部。
我该如何实现我的需求?
MouseEnter
和MouseLeave
事件,还尝试了窗口消息WM_MOUSEMOVE
&WM_MOUSELEAVE
和WM_NCMOUSEMOVE
&WM_NCMOUSELEAVE
,但似乎都无法满足我的需求...由于大部分表单被各种子控件占据,因此客户区域可见性较小。这意味着如果我移动鼠标得太快,鼠标移动将无法被检测到,即使鼠标在表单内部。
例如,我有一个停靠在底部的文本框,在桌面和文本框之间只有很小的边框。如果我迅速将鼠标从底部移动到文本框中,鼠标移动不会被检测到,但鼠标实际上是在文本框内部,也就是在表单内部。
我该如何实现我的需求?