Tkinter - Fonction "rejouer" inactive - Jeu shifumi
Résolu
plijyf2
-
Kriss0312 -
Kriss0312 -
Bonsoir,
J'ai mis un bouton "rejouer" afin de relancer le programme du jeu.
Mais bien que la fonction soit inscrite, rien ne se passe.
Voici mon code,
Merci de votre aide.
J'ai mis un bouton "rejouer" afin de relancer le programme du jeu.
Mais bien que la fonction soit inscrite, rien ne se passe.
Voici mon code,
Merci de votre aide.
from random import randint from tkinter import * # variables globales score_ordinateur = 0 score_joueur = 0 def score(joueur,ordinateur): global score_joueur, score_ordinateur if joueur == 1 and ordinateur == 1 : score_ordinateur += 0 score_joueur += 0 elif joueur == 1 and ordinateur == 2: score_ordinateur+= 1 elif joueur == 1 and ordinateur == 3: score_joueur += 1 elif joueur == 2 and ordinateur == 1: score_joueur += 1 elif joueur == 2 and ordinateur == 2: score_ordinateur += 0 score_joueur += 0 elif joueur == 2 and ordinateur == 3: score_ordinateur += 1 elif joueur == 3 and ordinateur == 1: score_ordinateur += 1 elif joueur == 3 and ordinateur == 2: score_joueur += 1 elif joueur == 3 and ordinateur == 3: score_ordinateur += 0 score_joueur += 0 def jouer(ordinateur): global score_joueur, score_ordinateur, score1, score2 joueur = randint(1,3) if joueur==1: lab2.configure(text="Papier") elif joueur==2: lab2.configure(text="Ciseaux") else: lab2.configure(text="Pierre") score(joueur,ordinateur) score1.configure(text=str(score_ordinateur)) score2.configure(text=str(score_joueur)) def jouer_papier(): jouer(1) lab1.configure(text="Papier") def jouer_ciseaux(): jouer(2) lab1.configure(text="Ciseaux") def jouer_pierre(): jouer(3) lab1.configure(text="Pierre") def reinit(): global score_joueur,score_ordinateur,score1,score2,lab1,lab2 score_ordinateur = 0 score_joueur = 0 score1.configure(text="0") score2.configure(text="0") lab1.configure(text="") lab2.configure(text="") #######Création de la fênetre tkinter ############## fenetre = Tk() fenetre.config(bg = "#8e2711") fenetre.geometry("700x750") barre = Canvas(fenetre, width = 630, height = 70, bg = "#8e2711",borderwidth=0,) barre.pack(side="top") barre.create_text(320,40, text="Bienvenue dans le jeu Shifumi ! ", font=("Segoe Script", "25","bold"), fill= "#FFFACD") ################ Création des widgets##################### bouton1 = Button(fenetre, text="Papier",width = 6, height =1,fg= "#800000",bg="#F0E68C",font=("Segoe Script", "20","bold"),command=jouer_papier) bouton1.configure(text="Papier") bouton1.place(x=300,y= 150) bouton2 = Button(fenetre, text="Ciseaux",width = 6, height =1,fg= "#800000",bg="#9ACD32",font=("Segoe Script", "20","bold"),command=jouer_ciseaux) bouton2.configure(text="Ciseaux") bouton2.place(x=40,y= 550) bouton3 = Button(fenetre, text="Pierre",width = 6, height =1,fg= "#800000",bg="#FFA500",font=("Segoe Script", "20","bold"),command=jouer_pierre) bouton3.configure(text="Pierre") bouton3.place(x=540,y= 550) bouton4 = Button(fenetre, text="Rejouer",width = 20, height =2,font=("arial", "10","bold"),command="reinit") bouton4.place(x=120, y=700) bouton5 = Button(fenetre, text="Quitter", width = 20, height =2,fg= "#ffffff",bg="black",font=("arial", "10","bold"),command=fenetre.destroy) bouton5.place(x=440, y=700) texte1 = Label(fenetre, text="Ordinateur", font=("Helvetica", 18,"bold"),bg= "#8e2711",fg="#FFFACD") texte1.place(x=220,y=300) texte2 = Label(fenetre, text="Joueur", font=("Helvetica", 18,"bold"),bg= "#8e2711",fg="#FFFACD") texte2.place(x=390,y=300) texte3 = Label(fenetre, text="Cliquez sur l'image de votre choix", font=("Helvetica",12),bg= "#8e2711",fg="#FFFACD") texte3.place(x=450,y=150) lab1 = Label(fenetre, text="",width =6, height =1,fg= "#800000",bg="#FFA500",font=("Segoe Script", "20","bold")) lab1.place(x=375,y= 340) lab2 = Label(fenetre, text="",width = 6, height =1,fg= "#ffffff",bg="#FFA500",font=("Segoe Script", "20","bold")) lab2.place(x=220,y= 340) score1 = Label(fenetre, text="0", font=("Helvetica", 30,"bold"),bg= "#8e2711",fg="#FFFACD") score1.place(x=270, y=450) score2 = Label(fenetre, text="0", font=("Helvetica", 30,"bold"),bg= "#8e2711",fg="#FFFACD") score2.place(x=430, y=450) fenetre.mainloop()
A voir également:
- Tkinter - Fonction "rejouer" inactive - Jeu shifumi
- Fonction si et - Guide
- 94 jeu - Télécharger - Puzzle & Réflexion
- 94 degrés jeu - Télécharger - Divers Jeux
- Jeu zuma - Télécharger - Jeux vidéo
- Logo jeu - Télécharger - Jeux vidéo
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
je suggère de faire deux choses:
1) ajouter une ligne print("reinit") au début de la fonction reinit, ce qui t'aidera à déterminer si la fonction est appelée.
2) comparer la définition du bouton4 avec les déclarations des autres boutons
je suggère de faire deux choses:
1) ajouter une ligne print("reinit") au début de la fonction reinit, ce qui t'aidera à déterminer si la fonction est appelée.
2) comparer la définition du bouton4 avec les déclarations des autres boutons
Merci beaucoup, ça fonctionne !
Je me permets une autre question concernant l'importation d'image pour mettre sur les boutons.
Je dois normalement mettre des images et non du texte sur les boutons mais j'ai abandonné après de heures de recherches !
Je sais que pour cela il faut utiliser "Photoimage" mais un message d'erreur indique :
J'ai lu que " toutes ces images, au format gif, doivent se trouver dans le même répertoire que le programme" mais je ne comprends.
Mon image "CIS.gif" se trouvait pourtant dans un dossier comprenant le code.
Merci du conseil éventuel
Je me permets une autre question concernant l'importation d'image pour mettre sur les boutons.
Je dois normalement mettre des images et non du texte sur les boutons mais j'ai abandonné après de heures de recherches !
Je sais que pour cela il faut utiliser "Photoimage" mais un message d'erreur indique :
self.tk.call(('image', 'create', imgtype, name,) + options) _tkinter.TclError: couldn't open "CIS.gif": no such file or directory
J'ai lu que " toutes ces images, au format gif, doivent se trouver dans le même répertoire que le programme" mais je ne comprends.
Mon image "CIS.gif" se trouvait pourtant dans un dossier comprenant le code.
Merci du conseil éventuel