在主窗口hwndFrame
中,它有一个孩子hwndChild
,其中有一个孩子hwndDescendant
。这两个孩子没有非客户区。 hwndDescendant
占据hwndChild
区域的大部分区域,因此hwndChild
看起来只是hwndDescendant
的“边界”。这个“边界”仅有4个像素的宽度。 (但hwndChild
的大小远大于此。)
我想跟踪'{hwndChild'的WM_MOUSELEAVE
。如果我慢慢移动鼠标,这样可以正常工作。
但是,如果我将鼠标从hwndFrame
快速移动到hwndDescendant
,反之亦然,hwndChild
没有收到WM_MOUSEMOVE
,因此WM_MOUSELEAVE
也没有。{/ p>
当鼠标从hwndChild
移动到hwndFrame
或hwndDescendant
时,也会生成WM_MOUSELEAVE。但我希望从hwndChild
移至hwndDescendant
时不会生成WM_MOUSELEAVE
。
我不想通过子类化hwndDescendant
的窗口过程来解决这个问题,因为如果hwndChild
有很多孩子,那么这不是一个好方法。
SetCapture
方法不可取。在这种情况下,我能解决这个问题的最佳方法是什么?