我在Direct3D9下运行了一个应用程序。应用程序正在使用Direct3D HW游标API (IDirect3DDevice9::SetCursorProperties等)。要控制光标,请执行以下操作。几乎所有的事情都很好:
当
需要时显示正常的OS游标。
问题在于我的窗口的非客户端区域(标题栏,屏幕边缘)。在非客户端区域中移动时,与该区域的功能对应的游标将简短显示,但一旦我停止移动,SetCursorProperties中的游标集将再次显示。
使用IDirect3DDevice9::SetCursorProperties的正确方法是什么,以便在我的窗口非客户端区域获得默认OS游标?
发布于 2010-12-20 13:17:14
在对各种事物进行了实验之后,应用程序中的以下更改为我解决了这个问题:
在窗口过程中,当接收到一个CursorInClient
IDirect3DDevice9::ShowCursor
中的条件(lParam&0xffff)==HTCLIENT的结果全局变量CursorInClient是假的,避免调用WM_SETCURSOR
https://stackoverflow.com/questions/4489062
复制相似问题