問題点: ウィジェットの入力内容ではなく、ウィジェット自身を表示している
.entry
は、ウィジェットに自動で割り当てられる識別子です。
問題を再現するコード
python
1import tkinter as tk
2
3root = tk.Tk()
4
5entry = tk.Entry(root)
6entry.pack()
7
8def clicked():
9 print(entry)
10
11button = tk.Button(root, text="click", command=clicked)
12button.pack()
13
14root.mainloop()
15
入力内容を得るには、entry.get()
ですが、
「合計」を表示という事で、数値入力の場合は文字列→数値の変換が必要になるので、
tkinter の IntVar が使えます。
python
1import tkinter as tk
2
3root = tk.Tk()
4
5num1 = tk.IntVar(root, value=0)
6num2 = tk.IntVar(root, value=0)
7entry1 = tk.Entry(root, textvar=num1, justify=tk.RIGHT)
8entry1.pack()
9entry2 = tk.Entry(root, textvar=num2, justify=tk.RIGHT)
10entry2.pack()
11
12def clicked():
13 print(num1.get() + num2.get())
14
15button = tk.Button(root, text="click", command=clicked)
16button.pack()
17
18root.mainloop()
19