Erreur .set (tkinter)
Akyso
-
Akyso Messages postés 1 Statut Membre -
Akyso Messages postés 1 Statut Membre -
Bonjour, bonsoir.
Je me suis mis récemment à python et j'ai voulu commencer mon 1er projet en faisant un jeu, un peu comme le juste prix. (Prix choisi aléatoire et c'est au joueur de le trouver). Le problème est j'ai plusieurs messages d'erreurs dont je n'arrive pas à régler. Voici les erreurs:
Et voici mon code :
Si vous avez une idée de comment les résoudre, je suis preneur et si en plus vous pouvez m'expliquer pourquoi cela serait génial.
Merci d'avance et cordialement Akyso
Je me suis mis récemment à python et j'ai voulu commencer mon 1er projet en faisant un jeu, un peu comme le juste prix. (Prix choisi aléatoire et c'est au joueur de le trouver). Le problème est j'ai plusieurs messages d'erreurs dont je n'arrive pas à régler. Voici les erreurs:
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\Akyso\AppData\Local\Programs\Python\Python37-32\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
File "B:\test code python\Script.py", line 13, in retrieve_input__good_price
position_price.set("Le prix est plus bas.")
AttributeError: 'Label' object has no attribute 'set'
Et voici mon code :
from tkinter import *
from random import randint
def retrieve_input__good_price ():
global just_price
input_value = input_nombre.get ()
input_value = int(input_value)
if input_value != just_price :
if input_value > just_price :
position_price.set("Le prix est plus haut.")
else:
position_price.set("Le prix est plus bas.")
else:
position_price.set("Vous avez le bon prix, félicitations !")
print(position_price)
#Création fenetre
window = Tk()
window.title("Le juste prix")
window.geometry ("1080x720")
window.minsize(720, 480)
window.iconbitmap("image/Logo_juste_prix.ico")
window.config(bg="#38A4CC")
#Génération du nombre aléatoire
just_price = randint(1,1000)
just_price = int(just_price)
#Titre
title = Label(window,bg="#38A4CC", font=("Arial", 40), text="Le juste prix !",fg="white")
title.pack(pady=40)
#Conteneur
frame = Frame (window, background="#38A4CC")
#Sous conteneur texte
sub_frame = Frame(frame,bg="#38A4CC")
sub_frame.grid(row=0, column=0, sticky=W)
#Titre du conteneur
sub_title = Label (sub_frame, text="Entrez un nombre entre 1 et 1000. ", bg="#38A4CC",font=("Arial", 25),fg="white")
sub_title.pack()
#Zone d'entré/input
input_nombre = Entry (sub_frame,bg="#38A4CC",font=("Arial", 20),fg="white")
input_nombre.pack(pady=20, fill=X)
#Position par rapport au prix
position_price = StringVar()
position_price.set("Donnez un nombre avant de savoir si vous avez gagnez")
position_price = Label(sub_frame,bg="#38A4CC", font=("Arial", 15), textvariable=position_price,fg="white")
position_price.pack(pady=10)
#Bouton validé
button = Button (sub_frame, text="Valider", font=("Arial", 25),fg="#38A4CC",bg="white",command=retrieve_input__good_price)
button.pack(pady=20, fill=X)
#Image
width = 500
height = 464
image = PhotoImage(file="image/Logo_juste_prix.png")
canvas = Canvas(frame,bg="#38A4CC",width=width,height=height,bd=0,highlightthickness=0)
canvas.create_image(width/2,height/2,image=image)
canvas.grid(row=0, column=1, sticky=W)
frame.pack(expand=YES)
window.mainloop()
Si vous avez une idée de comment les résoudre, je suis preneur et si en plus vous pouvez m'expliquer pourquoi cela serait génial.
Merci d'avance et cordialement Akyso
A voir également:
- Erreur .set (tkinter)
- Erreur 0x80070643 - Accueil - Windows
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
- J'aime par erreur facebook notification - Forum Facebook
1 réponse
Bon j'ai réussi à le faire fonctionner , voici comment j'ai fait :
Pour résumer, je voulais changer un Label au lieu de ma variable donc j'en ai créer une intermédiaire.
position_price = StringVar("")
position_pricet = StringVar("")
position_pricet.set("Donnez un nombre avant de savoir si vous avez gagnez")
position_price = position_pricet
position_pricet = Label(sub_frame,bg="#38A4CC", font=("Arial", 15), textvariable=position_pricet,fg="white")
position_pricet.pack(pady=10)
Pour résumer, je voulais changer un Label au lieu de ma variable donc j'en ai créer une intermédiaire.