Récupérer et utiliser valeur Entry
RésoluUtilisateur anonyme -
Bonjour, ce programme n'est pas terminé mais il donne un message d'erreur quand je le lance je n'arrive pas à utiliser les valeurs Entry est-ce que quelqu'un a une solution ?
from tkinter import *
from tkinter import messagebox
from tkinter import ttk
import string
# Create an instance of tkinter frame
win= Tk()
# Set the size of the tkinter window
win.geometry("700x600")
frame = Frame(win, bg='white')
def total():
nbr_report = int(nombre_reportage.get())
prix_report = int(prix_reportage.get(frame))
nbr_sup_image = int(nombre_supplément_image.get(frame))
prix_sup_image = int(prix_supplément_image.get(frame))
taxe = int(TVA.get(frame))
inf = int(inflation.get(frame))
p_deplacement = int(prix_deplacement.get(frame))
reduc = int(reduction.get(frame))
montant_brute= ((((nbr_report*prix_report)+(nbr_sup_image*prix_sup_image)+p_deplacement-reduc)*(inf))/100)
montant_ttc = ((montant_brute* (taxe)/100))
print(montant_brute)
print(montant_ttc)
def button_click():
pass
label_title = Label(frame,text="TVA en %",font=("Helvetica", 15),bg='white',fg='black')
label_title.pack()
TVA = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
TVA.pack()
label_subtitle = Label(frame,text="nombre reportage",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
nombre_reportage= Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
nombre_reportage.pack()
label_subtitle = Label(frame,text="Prix/reportage",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
prix_reportage = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
prix_reportage.pack()
label_subtitle = Label(frame,text="nombre suppléments image",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
nombre_supplément_image = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
nombre_supplément_image.pack()
label_subtitle = Label(frame,text="Prix/suppléments image",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
prix_supplément_image = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
prix_supplément_image.pack()
label_subtitle = Label(frame,text="inflation en %",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
inflation = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
inflation.pack()
label_subtitle = Label(frame,text="Coûts déplacements",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
prix_deplacement = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
prix_deplacement.pack()
label_subtitle = Label(frame,text="Réduction en €",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
reduction= Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
reduction.pack()
ttk.Button(win, text= "When you are finish click here", command=total()).pack(pady= 20, side=BOTTOM)
frame.pack(side =TOP)
win.mainloop()
total()
- _tkinter.tclerror: invalid command name ".!entry"
- Sfc scannow command - Guide
- Invalid configuration information please run setup program ✓ - Forum Windows XP
- Cannot find required map name - Forum BIOS
- Command mac - Guide
- Wan connected name repeated - Forum D-Link
5 réponses
bonjour,
en ligne 77, tu écris "command=total()".
Si tu veux que la fonction total soit appelée quand le bouton est cliqué, il faut écrire "command=total".
Bonjour
Pour déboguer par soi-même ou avec l'aide du forum
- Ne pas poster de messages en doublon
- Éviter d'avoir des avertissements partout dans le code, quand j'ai copié collé ton code, toutes les 3 ou 4 lignes, j'avais un panneau avec un message qui dit en gros, je ne connais pas tel mot clé, j'espère qu'il vient du import * plus haut, mais si ce n'est pas le cas ça va planter
- lire le message d'erreur, il t'indique quelle ligne est concernée, en général, il y a le n° de ligne et son code
- essayer d'analyser
- aller sur la ligne désigné par le message d'erreur
- tâcher de comprendre l'origine de l'erreur
- lire la documentation des objets / méthodes / fonctions etc.. utilisées sur cette ligne pour voir si on n'y trouve pas un début de solution
- chercher des exemples d'utilisation de ces objets / méthodes / fonctions
- si on n'y arrive pas, copier-coller le message d'erreur sur le forum avec la question et le code.
- Ça évite de recevoir une réponse sur un autre problème du code que celui qu'on cherche
- Ça peut suffire au lecteur pour répondre au moins partiellement, typiquement là, je t'aurais répondu, ça plante à la ligne 16, mais pas à la 15, quelle est la différence entre ces 2 lignes ?
from tkinter import *
from tkinter import ttk
# Create an instance of tkinter frame
win = Tk()
# Set the size of the tkinter window
win.geometry("700x600")
frame = Frame(win, bg='white')
def total():
nbr_report = int(nombre_reportage.get())
prix_report = int(prix_reportage.get())
nbr_sup_image = int(nombre_supplement_image.get())
prix_sup_image = int(prix_supplement_image.get())
taxe = int(TVA.get())
inf = int(inflation.get())
p_deplacement = int(prix_deplacement.get())
reduc = int(reduction.get())
montant_brute= ((((nbr_report*prix_report)+(nbr_sup_image*prix_sup_image)+p_deplacement-reduc)*(inf))/100)
montant_ttc = ((montant_brute* (taxe)/100))
print(montant_brute)
print(montant_ttc)
def button_click():
pass
label_title = Label(frame,text="TVA en %",font=("Helvetica", 15),bg='white',fg='black')
label_title.pack()
TVA = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
TVA.pack()
label_subtitle = Label(frame,text="nombre reportage",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
nombre_reportage= Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
nombre_reportage.pack()
label_subtitle = Label(frame,text="Prix/reportage",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
prix_reportage = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
prix_reportage.pack()
label_subtitle = Label(frame,text="nombre suppléments image",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
nombre_supplement_image = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
nombre_supplement_image.pack()
label_subtitle = Label(frame,text="Prix/suppléments image",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
prix_supplement_image = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
prix_supplement_image.pack()
label_subtitle = Label(frame,text="inflation en %",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
inflation = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
inflation.pack()
label_subtitle = Label(frame,text="Coûts déplacements",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
prix_deplacement = Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
prix_deplacement.pack()
label_subtitle = Label(frame,text="Réduction en €",font=("Helvetica", 15),bg='white',fg='black')
label_subtitle.pack()
reduction= Entry(frame,font=("Helvetica", 20),bg='white',fg='black',bd=1 )
reduction.pack()
ttk.Button(win, text= "When you are finish click here", command=total).pack(pady= 20, side=BOTTOM)
frame.pack(side =TOP)
win.mainloop()
total()
voici le code avec moins d'erreurs
voici le code erreur :
Traceback (most recent call last):
File "/Users/kalixarekos/PycharmProjects/Devis/main.py", line 81, in <module>
total()
File "/Users/kalixarekos/PycharmProjects/Devis/main.py", line 14, in total
nbr_report = int(nombre_reportage.get())
File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/tkinter/__init__.py", line 3043, in get
return self.tk.call(self._w, 'get')
_tkinter.TclError: invalid command name ".!frame.!entry2"
from tkinter import *
from tkinter import ttk
# Create an instance of tkinter frame
win = Tk()
# Set the size of the tkinter window
win.geometry("700x600")
frame = Frame(win, bg='white')
def total():
nbr_report = int(nombre_reportage.get())
prix_report = int(prix_reportage.get())
nbr_sup_image = int(nombre_supplement_image.get())
prix_sup_image = int(prix_supplement_image.get())
taxe = int(TVA.get())
inf = int(inflation.get())
p_deplacement = int(prix_deplacement.get())
reduc = int(reduction.get())
montant_brute = ((((nbr_report*prix_report)+(nbr_sup_image*prix_sup_image)+p_deplacement-reduc)*inf)/100)
montant_ttc = ((montant_brute * taxe)/100)
print(montant_brute)
print(montant_ttc)
def button_click():
pass
label_title = Label(frame, text="TVA en %", font=("Helvetica", 15), bg='white', fg='black')
label_title.pack()
TVA = Entry(frame, font=("Helvetica", 20), bg='white', fg='black', bd=1)
TVA.pack()
label_subtitle = Label(frame, text="nombre reportage", font=("Helvetica", 15), bg='white', fg='black')
label_subtitle.pack()
nombre_reportage = Entry(frame, font=("Helvetica", 20), bg='white', fg='black', bd=1)
nombre_reportage.pack()
label_subtitle = Label(frame, text="Prix/reportage", font=("Helvetica", 15), bg='white', fg='black')
label_subtitle.pack()
prix_reportage = Entry(frame, font=("Helvetica", 20), bg='white', fg='black', bd=1)
prix_reportage.pack()
label_subtitle = Label(frame, text="nombre suppléments image", font=("Helvetica", 15), bg='white', fg='black')
label_subtitle.pack()
nombre_supplement_image = Entry(frame, font=("Helvetica", 20), bg='white', fg='black', bd=1)
nombre_supplement_image.pack()
label_subtitle = Label(frame, text="Prix/suppléments image", font=("Helvetica", 15), bg='white', fg='black')
label_subtitle.pack()
prix_supplement_image = Entry(frame, font=("Helvetica", 20), bg='white', fg='black', bd=1)
prix_supplement_image.pack()
label_subtitle = Label(frame, text="inflation en %", font=("Helvetica", 15), bg='white', fg='black')
label_subtitle.pack()
inflation = Entry(frame, font=("Helvetica", 20), bg='white', fg='black', bd=1)
inflation.pack()
label_subtitle = Label(frame, text="Coûts déplacements", font=("Helvetica", 15), bg='white', fg='black')
label_subtitle.pack()
prix_deplacement = Entry(frame, font=("Helvetica", 20), bg='white', fg='black', bd=1)
prix_deplacement.pack()
label_subtitle = Label(frame, text="Réduction en €", font=("Helvetica", 15), bg='white', fg='black')
label_subtitle.pack()
reduction = Entry(frame, font=("Helvetica", 20), bg='white', fg='black', bd=1)
reduction.pack()
ttk.Button(win, text="When you are finish click here", command=total).pack(pady=20, side=BOTTOM)
frame.pack(side=TOP)
win.mainloop()
total()
j'arrive pas à corriger les 2 derniers une idée ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionDésolé de t'embêter à essayer de te faire coder correctement.
Après si tu considères qu'un faux résultat correspond à ce que tu veux alors
c'est bon le problème est réglé
On pourrait à ce que le montant brut soit 100 et le montant TTC 120, qu'en penses-tu ?
Ce n'est pas plus concluant avec un peu d'inflation.
Testé avec le code de 19:47



merci mais ça ne règle pas le problème de la récupération des Entry^^