FR4NK13 a écrit :
Ca fait planter avec pour message
[12 :34 :39] Type d'exécutable: Windows - x86 (32bit, Unicode)
Je vois très facilement le problème, relis toi bien sur ce coup.
Concernant le passage dans le code que tu me montres, de ce que j'ai compris hier, j'ai mal placé les bind, c'est ça ?
Je vais essayer de détailler ce que j'ai voulu faire :
1 : J'ouvre la fenêtre dans une procédure, j'y place les gadgets.
2 : Je place les bind dans la procédure, mais après le endif afin qu'il ne soit pas dans la condition. (Si tu me demandes pourquoi hors de la condition, je ne saurais pas te répondre et effectivement ça paraît illogique...
me semblait que dedans ça plantait.
3 : j'ai appelé la procedure à la fin pour deux raisons ; la première, c'est que j'avais une erreur qui me disait en gros qu'il fallait au moins une fenêtre d'ouverte pour ne je sais plus quoi ; je n'ai pu régler ce problème qu'en appelant la procédure. La deuxième, j'ai choisi cette procédure à appeler car c'était la première à appeler selon moi vu que c'est la fenêtre.
Et bien, non, c'était beaucoup plus basique que ça : pourquoi mettre tout ça dans une procédure si tu ne l'appelles qu'une fois, surtout si tu l'appelles juste après l'avoir créée?
Code : Tout sélectionner
Procedure fenetre()
If OpenWindow(0, 0, 0, 1000, 1000, "Pierre, Papier, Ciseaux V.1", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TextGadget(#Texte,470,100,100,100,"Bon jeu!")
TextGadget(#Score,490,370,100,100,"0 - 0")
ButtonGadget(#Pierre, 400, 190, 200, 20, "Pierre")
ButtonGadget(#Papier, 400, 220, 200, 20, "Papier")
ButtonGadget(#Ciseaux, 400, 250, 200, 20, "Ciseaux")
EndIf
BindGadgetEvent(#Pierre, @Partie())
BindGadgetEvent(#Papier, @Partie())
BindGadgetEvent(#Ciseaux, @Partie())
EndProcedure
fenetre()
et ça
Code : Tout sélectionner
If OpenWindow(0, 0, 0, 1000, 1000, "Pierre, Papier, Ciseaux V.1", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TextGadget(#Texte,470,100,100,100,"Bon jeu!")
TextGadget(#Score,490,370,100,100,"0 - 0")
ButtonGadget(#Pierre, 400, 190, 200, 20, "Pierre")
ButtonGadget(#Papier, 400, 220, 200, 20, "Papier")
ButtonGadget(#Ciseaux, 400, 250, 200, 20, "Ciseaux")
EndIf
BindGadgetEvent(#Pierre, @Partie())
BindGadgetEvent(#Papier, @Partie())
BindGadgetEvent(#Ciseaux, @Partie())
Ca donne exactement le même résultat. Découper son code en procedure c'est cool, mais faut pas non plus faire ça systématiquement : si ça ne sert pas, autant ne pas rajouter des lignes de codes inutiles.