自动隐藏鼠标
最近做一个东西需要有自动隐藏鼠标的功能
本来觉得挺简单的,不就是ShowCursor的调用吗
可用起来发现还有一个什么计数的问题
最初现在是这么做的
1. 启动一个定时器,到时间后就调用ShowCursor(false)隐藏鼠标
2. 在mousemove消息响应中调用ShowCursor(true)来显示鼠标
但发现mousemove消息每次调用会导致那个计数增加,要想再次隐藏需要调用相同数量的false
然后又改成
CURSORINFO stInfo;
stInfo.cbSize = sizeof(stInfo);
BOOL bRet = GetCursorInfo(&stInfo);
if(bRet && stInfo.flags == CURSOR_SHOWING)
{
ShowCursor(FALSE);
}
这样子的在调用ShowCursor之前先判断鼠标状态
可又发现当窗口没有焦点时还会不停的调用ShowCursor(FALSE)
再有就是如果弹出一个模态对话框后,当鼠标隐藏了在这个对话框上也就看不到鼠标了
希望大家给提供一个比较好的方法能自动隐藏鼠标