我需要检测用户何时将鼠标移到表单及其所有子控件上,以及何时离开表单。我尝试了表单的MouseEnter
和MouseLeave
事件,我尝试了WM_MOUSEMOVE
&WM_MOUSELEAVE
和WM_NCMOUSEMOVE
&WM_NCMOUSELEAVE
对 Windows 消息,但似乎没有一个按我想要的那样工作......
我的大部分表单都被各种子控件占据,没有太多可见的客户区。这意味着如果我非常快速地移动鼠标,则不会检测到鼠标移动,尽管鼠标在窗体内。
例如,我有一个文本框,它停靠在底部,位于桌面和文本框之间,只有一个非常小的边框。如果我将鼠标从底部快速移动到 TextBox 中,则不会检测到鼠标移动,但鼠标在 TextBox 内部,因此在 Form 内部。
我怎样才能达到我所需要的?