我无法使用SDL隐藏鼠标光标(正确)。我正在使用Ubuntu 10.10并且一直在使用以下内容:
SDL_ShowCursor( SDL_DISABLE );
SDL_WarpMouse( x, y );
两者都没有正常运作;它似乎没有视觉效果,但是文档声明了触发的鼠标移动事件,但鼠标不会移动到屏幕上或者在屏幕上消失。
创建SDL窗口(通过SDL_CreateWindow),标志为SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN。全屏对结果没有影响。
在全屏模式下以低分辨率运行窗口(例如640x480),确实提供了所需的命令效果;但光标从底层窗口渗透。 在1024x768左右,它有一个完全不同的光标图标。 随着我的分辨率越来越高,它会停止流血,就像它的窗口(Gnome光标)一样。没有上述命令的影响。
有什么想法吗?
答案 0 :(得分:2)
我知道这个问题已经过时了,但它仍然存在。
以下是解决方案:
如果要隐藏光标,请写下:
SDL_Cursor *cursor; /* Make this variable visible in the point
where you exit the program */
int32_t cursorData[2] = {0, 0};
cursor = SDL_CreateCursor((Uint8 *)cursorData, (Uint8 *)cursorData, 8, 8, 4, 4);
SDL_SetCursor(cursor);
退出计划的地方:
SDL_FreeCursor(cursor);
答案 1 :(得分:1)
*是的,游标尚未在SDL 1.3中实现。我有点故意让他们没有实现作为提醒,1.3尚未准备好。 *
Quote by Sam Lantinga, an SDL Developer;因此,这个问题只是一个SDL错误(很快就会修复)。