Dans le cours sur la gestion des événements, à la fin, un exercice propose d'afficher un zozor à chaque clic de souris et ce avec un maximum de 10 zozor.
J'y suis presque arrivé mais au 2e clic de souris et uniquement au 2e, un zozor apparait en haut à gauche en plus de celui qui devait apparaitre normalement (du au clic de souris). Mais je n'arrive pas à voir où est mon erreur. Pourriez-vous m'aider.
for(pos=0; pos<10; pos++)//toutes les positions de tous les zozor sont mises a -100 pour ne pas les voir {
positionZozor[pos].x = -100;
positionZozor[pos].y = -100; }
while(continuer)//debut de la boucle des evenements {
SDL_WaitEvent(&event); switch(event.type) { case SDL_QUIT:
continuer = 0; break;
case SDL_MOUSEBUTTONDOWN:
if(nbZozor<10)//on n'affiche que 10 zozor {
positionZozor[nbZozor].x = event.button.x;// on recupere la position de la souris que l'on met dans le position de zozor
positionZozor[nbZozor].y = event.button.y;
for(pos=0; pos<10; pos++)//toutes les positions de tous les zozor sont mises a -100 pour ne pas les voir {
positionZozor[pos].x = -100;
positionZozor[pos].y = -100; }
while(continuer)//debut de la boucle des evenements {
SDL_WaitEvent(&event); switch(event.type) { case SDL_QUIT:
continuer = 0; break;
case SDL_MOUSEBUTTONDOWN:
if(nbZozor<10)//on n'affiche que 10 zozor {
positionZozor[nbZozor].x = event.button.x;// on recupere la position de la souris que l'on met dans le position de zozor
positionZozor[nbZozor].y = event.button.y;
Cela aura pour effet de "colorer" votre code et donc d'en faciliter grandement la lecture. Vous aurez ainsi beaucoup plus de chances d'avoir des réponses.
Voici un exemple de code non coloré avec la balise "citation" (mauvais exemple) :
Citation : Pas de titre
int main(int argc, char *argv[])
{
long choixOperation;
printf("Choisissez l'operation a effectuer \n\n");
/* etc. */
}
Voici maintenant le même code coloré, si vous aviez utilisé la balise "code" (bon exemple) :
int main(int argc, char *argv[]) { long choixOperation;
printf("Choisissez l'operation a effectuer \n\n"); /* etc. */ }
C'est plus clair n'est-ce pas ?
N'hésitez pas à éditer votre message pour changer la balise afin de colorer votre code.
Désolé d'avoir oublié la balise CODE, c'est vrai que c'est beaucoup mieux, je suis impardonnable. Vous voulez bien m'aider quand même
pb avec le gestion des evenements
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
If you'd like to join us, read "How do we work at OpenClassrooms"! :)