应用程序窗口中的光标类型不正确

时间:2010-12-19 22:18:51

标签: c++ winapi cursor

在使用Windows API制作GUI之后,我最近意识到光标有问题。当我编译并运行我的应用程序时,它会显示一个类似于它的窗口。当我将光标从屏幕左侧拖动到我的应用程序窗口时,当它越过边框时,它变为< - >调整大小的事情,但它仍然像我窗口内的任何地方。如果我从底部将它带入窗口,也是如此。当我从右侧做的时候,问题不存在。我质疑它是否只是我的程序,所以我去了MSDN网站甚至编译并尝试了他们的程序(http://msdn.microsoft.com/en-us/library/ff381409%28v=VS.85%29.aspx )。同样的问题!那么我开始尝试使用WM_SETCURSOR消息和游标函数但却无处可去。 有没有人对此有任何解释,我可以做些什么来解决它?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

是的,该示例代码的行为与您描述的相同,因为hCursor的{​​{1}}成员设置为零,WNDCLASS无法处理WindowProc()

如果你想要一直使用相同的光标,那么在设置窗口类时最简单的做法就是这样:

WM_SETCURSOR

如果您希望对光标有更多控制权,那么您希望将wc.hCursor = LoadCursor(0, IDC_ARROW); 保留为零并呼叫WNDCLASS::hCursor以响应SetCursor()。您需要加载/创建各种游标,并根据应用程序的状态选择合适的游标。