возвращенный SDL_cursor из SDL_GetCursor() нельзя использовать с SDL_GetMouseState()?

StackOverflow https://stackoverflow.com/questions/517386

  •  21-08-2019
  •  | 
  •  

Вопрос

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

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

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

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

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

Это было полезно?

Решение

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

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

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

Я думаю

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

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

Другие советы

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top