возвращенный SDL_cursor из SDL_GetCursor () не может использоваться с SDL_GetMouseState ()? - PullRequest
0 голосов
/ 05 февраля 2009

Я пытаюсь получить x, y и состояние моей мыши в SDL. Я пытался использовать строки

int mstate, mx, my = 0;
mstate, mx, my = SDL_GetCursor().SDL_GetMouseState();

Но это дает мне ошибку

C: [путь] \ respletest2 \ main.cpp | 107 | ошибка: запрос на член SDL_GetMouseState' in SDL_GetCursor () ', который имеет тип не класса `SDL_Cursor *' |

Есть ли способ заставить это работать? Создание объекта SDL_cursor является пустой тратой, когда SDL_GetCursor () должен создать объект, который будет возвращен для вас.

Ответы [ 2 ]

0 голосов
/ 26 июня 2013

Вы должны поставить указатели на ваши переменные, и тогда у них будут координаты

int x,y;
SDL_GetMouseState(&x,&y);

теперь x и y имеют координаты вашего курсора

0 голосов
/ 05 февраля 2009

http://www.libsdl.org/docs/html/sdlgetcursor.html

SDL_GetCursor() возвращает указатель, поэтому вам нужно использовать оператор -> для доступа к его элементу.

Ответ на ваш ответ:

Я думаю

mstate, mx, my = SDL_GetCursor()->SDL_GetMouseState();

- проблема, если она не была вставлена ​​неправильно. Я не думаю, что это делает то, что вы думаете, что должно делать, и я не совсем уверен, что вы думаете, что он должен делать.

...