Windows为鼠标光标保存了一个「显示计数」。
如果安装了鼠标,显示计数会被初始化为0;否则,显示计数会被初始化为-1。
只有在显示计数非负时才显示鼠标光标。要增加显示计数,呼叫:ShowCursor (TRUE) ;
要减少显示计数,呼叫:ShowCursor (FALSE) ;
所以如果想修改光标,应该:
ShowCursor (FALSE) ;//隐藏原来的光标
SetCursor(hcursor);//设置新的光标
ShowCursor (TRUE) ;//显示新的光标
如果产生了鼠标消息,系统可能会用窗口的hcursor重新刷新光标,
所以用SetClassLong(hwnd,GCL_HCURSOR,(long)LoadCursor(NULL,IDC_CROSS));才能一直保持