0

我正在制作一个 Python GUI,其中用户将 int 值输入到一个Entry小部件中,然后程序将这些值添加在一起。

但是,由于某种原因,每当我尝试告诉程序添加这些值时,都会出现错误:

TypeError: unsupported operand type(s) for +: 'Entry' and 'Entry'"

我环顾四周,但找不到有关此主题的任何内容。我尝试将Entry小部件声明为整数,IntVars但它没有奏效,所以我想知道是否真的可以将Entry值相加。

4

1 回答 1

2

首先,您必须get将字符串从 中Entry转换为整数。

from Tkinter import *
root = Tk()

e1 = Entry(root)
e2 = Entry(root)
l = Label(root)
def callback():
    total = sum(int(e.get()) for e in (e1, e2))
    l.config(text="answer = %s" % total)
b = Button(root, text="add them", command=callback)
for widget in (e1, e2, l, b):
    widget.pack()
b.mainloop()
于 2012-05-29T20:52:44.077 回答