好的,当人们生病时,我有一个游戏设置不同的光标。我使用带有loadcusor和WM_SETCURSOR的setcursro。问题是我的默认光标,我把它设置在我注册我的窗口的地方,它改为小时玻璃,直到该人输了,而不是它改变了我设置的光标。我发现当我使用WM_SETCURSOR时,它会将默认的cusor更改为沙漏,直到我在人输了时将其设置为不同的光标。即时通讯使用win32
任何想法?
答案 0 :(得分:5)
通常,如果您要更改游标,则需要执行以下操作:
首先我们初始化我们将使用的游标:
HCURSOR cursors[3];
cursors[0] = LoadCursor(NULL, IDC_ARROW); // default cursor
cursors[1] = LoadCursor(NULL, IDC_CROSS); // other cursor
cursors[2] = LoadCursor(NULL, IDC_WAIT); // wait cursor
int current_cursor = 0;
当我们想要改变光标时,我们只选择我们想要的那个:
current_cursor = 1;
我们的WM_SETCURSOR处理程序看起来像这样:
case WM_SETCURSOR:
SetCursor(cursors[current_cursor]);
return TRUE;