Tämän ohjelman idea olisi sekunnin välein kymmenen ottaa ylös hiiren koordinaatit ja merkitä ne rastilla, mutta voih. Se ei tee kun yhden rastin, ruudun keskelle, josta hiiri lähtee liikkeelle. Sen jälkeen se tulostaa loput rastit sen päälle. Mikä siis vikana?
#include "omat_funktiot.h" #define RESOLUUTIO_X 1024 #define RESOLUUTIO_Y 768 #define BPP 32 int main(int argc, char *argv[]) { int x_hiiri, y_hiiri; int x_naytto, y_naytto; int loop; if(SDL_Init(SDL_INIT_VIDEO) < 0) { return 0; } SDL_Surface *naytto; naytto = SDL_SetVideoMode(RESOLUUTIO_X, RESOLUUTIO_Y, BPP, SDL_HWSURFACE|SDL_FULLSCREEN); for(loop = 0; loop < 10; ++loop) { SDL_Delay(1000); SDL_GetMouseState(&x_hiiri, &y_hiiri); for(x_naytto = 0; x_naytto < RESOLUUTIO_X; ++x_naytto) { PiirraPikseli(naytto, x_naytto, y_hiiri, 250, 0, 25); } for(y_naytto = 0; y_naytto < RESOLUUTIO_Y; ++y_naytto) { PiirraPikseli(naytto, x_hiiri, y_naytto, 250, 0, 25); } SDL_Flip(naytto); } SDL_Delay(5000); SDL_Quit(); return 0; }
Sulta puuttuu sieltä viestien käsittely:
SDL_Event event;
SDL_PollEvent(&event);
Suuret kiitokset :)
Aihe on jo aika vanha, joten et voi enää vastata siihen.