la tornata SDL_cursor da SDL_GetCursor () non può essere utilizzato con SDL_GetMouseState ()?
Domanda
Sto cercando di ottenere la x, y, e lo stato di mio mouse in SDL. Ho provato ad utilizzare le linee
int mstate, mx, my = 0;
mstate, mx, my = SDL_GetCursor().SDL_GetMouseState();
Ma mi dà l'errore
C: [percorso] \ particletest2 \ main.cpp | 107 | errore: richiesta di membro
SDL_GetMouseState' in
SDL_GetCursor () 'che è di tipo non-classe `SDL_Cursor *' |
C'è un modo per ottenere questo lavoro? Sembra uno spreco per creare un oggetto SDL_cursor quando SDL_GetCursor () dovrebbe essere la creazione di uno di tornare per voi.
Soluzione
http://www.libsdl.org/docs/html/sdlgetcursor.html
SDL_GetCursor()
restituisce un puntatore e quindi è necessario utilizzare l'operatore ->
per accedere al suo membro.
In risposta alla vostra risposta:
Credo che
mstate, mx, my = SDL_GetCursor()->SDL_GetMouseState();
è un problema se non è stato incollato in modo non corretto. Non credo che questo sta facendo quello che si pensa che dovrebbe fare, e io non sono davvero sicuro di quello che si pensa che dovrebbe fare.
Altri suggerimenti
devi mettere puntatori a variabili Distinti e poi questo andando avere le coordinate
int x,y;
SDL_GetMouseState(&x,&y);
ora x ed y sono le coordinate del cursore