C++ 隐藏光标/扭曲鼠标(SDL 1.3)
我无法使用SDL(正确)隐藏鼠标光标。我正在使用Ubuntu 10.10,并一直在使用以下内容:C++ 隐藏光标/扭曲鼠标(SDL 1.3),c++,opengl,mouse,sdl,ubuntu-10.10,C++,Opengl,Mouse,Sdl,Ubuntu 10.10,我无法使用SDL(正确)隐藏鼠标光标。我正在使用Ubuntu 10.10,并一直在使用以下内容: SDL_ShowCursor( SDL_DISABLE ); SDL_WarpMouse( x, y ); 两者都不能正常工作;它似乎没有视觉效果,但是文档中显示有一个触发的鼠标运动事件,但鼠标不会在任何位置移动或在屏幕上消失 创建SDL窗口(通过SDL_CreateWindow)时,将显示标志SDL_Window_OPENGL | SDL_Window_。全屏显示对结果没有影响 在全屏模式下
SDL_ShowCursor( SDL_DISABLE );
SDL_WarpMouse( x, y );
两者都不能正常工作;它似乎没有视觉效果,但是文档中显示有一个触发的鼠标运动事件,但鼠标不会在任何位置移动或在屏幕上消失
创建SDL窗口(通过SDL_CreateWindow)时,将显示标志SDL_Window_OPENGL | SDL_Window_。全屏显示对结果没有影响
在全屏模式下以低分辨率运行窗口(如640x480),确实提供了所需的命令效果;但光标从底层窗口中渗出。
大约1024x768,它有一个完全不同的光标图标。
当我的分辨率越来越高时,它停止流血,就像是一个窗口(Gnome光标)。不受上述命令的影响
有什么想法吗?*是的,游标还没有在SDL1.3中实现。我有点故意让它们没有实现,以提醒大家1.3还没有准备好*
);因此,这个问题只是一个SDL错误(很快就会被修复)。我知道这个问题很老,但它仍然是实际的 以下是解决方案: 在要隐藏光标的位置,写下以下内容:
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);
我相信你指的是SDL_OPENGL。我想你不需要任何显示的SDL\u窗口。至于你的扭曲代码,它和我的完全匹配。我不太确定会出什么问题。我想我应该注意我使用的是SDL1.3