SetCursor不起作用

时间:2013-03-23 10:33:50

标签: c++ sdl

我正在使用SDL2开发Windows应用程序。我想更改光标显示。我使用完全复制的样本创建了光标 SDL_CreateCursor 然后在SDL_SetCursor事件中调用SDL_MOUSEMOTION,但似乎没有运气。

所以我跳进去:

SDL_Cursor * cursor = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_HAND); 
SDL_SetCursor(cursor); 

官方维基向{TODO州报告SDL_CreateSystemCursor。我查看了源代码,似乎已经实现并且可以创建有效的游标。但是,光标显示也没有改变。

我该怎么办?

1 个答案:

答案 0 :(得分:0)

你应该发布你的实际代码,但我会在黑暗中拍摄,看看我能不能猜出你做错了什么。你说“我使用SDL_CreateCursor完全复制的样本创建了光标,然后在SDL_MOUSEMOTION事件中调用SDL_SetCursor,但似乎没有运气。”然后你继续说它似乎闪现了正确的图像。

尝试在偶数循环之前更改SDL光标。这不是您希望每次鼠标移动时都要运行的东西,而是您在初始化时更改的内容。将代码移动到事件循环之前,然后移动到SDL_Init。

如果这不起作用,请在此处发布您的代码,以便我们实际看到您正在做的事情。