我希望使用Unity3d在我的游戏中使用系统光标支持。但Unity中不支持系统光标更改。 使用此代码
[System.Runtime.InteropServices.DllImport("user32.dll")]
static extern System.IntPtr LoadCursor(System.IntPtr hInstance, int lpCursorName);
[System.Runtime.InteropServices.DllImport("user32.dll")]
static extern System.IntPtr SetCursor(System.IntPtr hCursor);
我可以更改光标,但操作系统会在我之后更改它。我尝试在每一帧中做这个,但似乎操作系统仍然用其他频率改变它。我认为这是因为游戏和操作系统或其他方面的FPS不同。
我在MSDN上发现了这个:
如果您的应用程序必须在窗口中设置光标,请执行 确保指定窗口的类的类光标设置为NULL。 如果类游标不为NULL,则系统将恢复类游标 每次移动鼠标。
所以我想把我的窗口类的类游标设置为NULL,但是我无法找到它。