Aide SDL en C

Banshies Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -  
Banshies Messages postés 13 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'aimerai savoir dans la SDL si lors de la gestion des évènements on peut demander à l'ordinateur d'appuyer une touche par lui même.Par exemple si on dit que l'utilisateur appuie sur escape le programme se ferme,puis plus loin dans le programme demander à l'ordi d'"appuyer lui-même" sur escape.

Et une autre question par rapport aux évènements de la fenêtre (ex : quand la fenêtre est diminuée etc..) est-il possible de garder le gain ? C'est à dire que si je dis que lorsque l'utilisateur appuie sur escape on ferme le programme, si l'utilisateur diminue le programme est-il possible si après il appuie sur escape le programme se ferme?

Merci à tous!!

1 réponse

Thiphariel Messages postés 49 Date d'inscription   Statut Membre Dernière intervention   11
 
Euh, pas compris la deuxième partie (Edit : Si finalement je vois ce que tu veux dire, et je ne pense pas que ce soit possible, car quand tu diminue ton programme, il perds le focus), mais pour la première, pour ton event, tu va le gérer via un :

int continuer = 1; 
... 
while (continuer) 
{ 
        SDL_WaitEvent(&event); 
        switch(event.type) 
        { 
            case SDL_KEYDOWN: 
                switch (event.key.keysym.sym) 
                { 
                    case SDLK_ESCAPE: 
                        continuer = 0;    //Si la touche "échap" est pressée, le programme ferme. 
                        break; 
                } 
                break; 
        } 
} 


Donc, si tu veux que l'ordinateur "appuie" sur échap, tu as juste à set ta variable "continuer" à 0.
Si j'ai mal compris, re explique toi ^^'
0
Banshies Messages postés 13 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour tes réponses Thiphariel!! Ma question pour la 1 est ça:
int continuer = 1;
...
while (continuer)
{
SDL_WaitEvent(&event);
switch(event.type)
{
case SDL_KEYDOWN:
switch (event.key.keysym.sym)
{
case SDLK_ESCAPE:
continuer = 0; //Si la touche "échap" est pressée, le programme ferme.
break;
}
break;
}
event..key.keysym.sym = SDLK_ESCAPE; //C'est à dire qu'on marque ça au lieu de mettre "continuer = 0"
}
Je ne sais pas si s'est encore très explicite^^
0