MFC 判断鼠标是否在窗口内部
时间: 2023-09-26 12:15:10 浏览: 231
您可以通过以下步骤来判断鼠标是否在 MFC 窗口的内部:
1. 获取鼠标当前的位置,可以使用 `CWnd::GetCursorPos()` 方法。
2. 将鼠标位置转换为窗口内部的坐标,可以使用 `CWnd::ScreenToClient()` 方法。
3. 获取窗口的客户区域,可以使用 `CWnd::GetClientRect()` 方法。
4. 判断鼠标位置是否在客户区域内部,如果是则表示鼠标在窗口内部,否则表示鼠标在窗口外部。
下面是一个示例代码:
```cpp
CPoint point;
GetCursorPos(&point);
ScreenToClient(&point);
CRect rect;
GetClientRect(&rect);
if (rect.PtInRect(point)) {
// 鼠标在窗口内部
} else {
// 鼠标在窗口外部
}
```
阅读全文