J'ai plusieurs Entry que je souhaite additionner. Le résultat est présenté dans un Label.

Pour cela, j'utilise trace

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import tkinter as tk
 
def somme(*args):
    result.set(var1.get() + var2.get())
 
 
root = tk.Tk()
 
var1 = tk.IntVar()
 
t1 = tk.Entry(root, textvariable=var1)
t1.pack()
 
var2 = tk.IntVar()
 
t2 = tk.Entry(root, textvariable=var2)
t2.pack()
 
result = tk.IntVar()
l = tk.Label(root, textvariable=result)
l.pack()
 
var1.trace('w', somme)
var2.trace('w', somme)
 
 
root.mainloop()
j'ai réalisé un test avec 2 Entry... et j'ai l'erreur suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Users\ICAREX\AppData\Local\Programs\Python\Python38\lib\tkinter\__init__.py", line 535, in get
    return self._tk.getint(value)
_tkinter.TclError: expected integer but got ""
 
During handling of the above exception, another exception occurred:
 
Traceback (most recent call last):
  File "C:\Users\ICAREX\AppData\Local\Programs\Python\Python38\lib\tkinter\__init__.py", line 1883, in __call__
    return self.func(*args)
  File "D:/Programmation/Test_sumEntry.py", line 4, in somme
    result.set(var1.get() + var2.get())
  File "C:\Users\ICAREX\AppData\Local\Programs\Python\Python38\lib\tkinter\__init__.py", line 537, in get
    return int(self._tk.getdouble(value))
_tkinter.TclError: expected floating-point number but got ""
d'avance merci