为什么这不添加?

时间:2017-04-28 20:08:03

标签: python tkinter

我已经看了其他问题,并试图解决这个问题,但我真的很难让我的代码打印出答案。

from tkinter import *



root = Tk()
label1 = Label(root, text="Number 1")
label2 = Label(root, text="Number 2")
labelplus = Label(root, text="+")

label1.grid(row=0, sticky=E)
label2.grid(row=3, sticky=E)
labelplus.grid(row=2, column=1)


entry1_var= StringVar()
entry2_var= StringVar()

entry1 = Entry(root, textvariable= entry1_var)
entry2 = Entry(root, textvariable= entry2_var)

entry1.grid(row=0, column=1)
entry2.grid(row=3, column=1)

first = (entry1_var.get()
second =(entry2_var.get()

def additionStuff(event):
    totalNumbers = (first + second)
    print(totalNumbers)

button1 = Button(root, text="Add Numbers")
button1.bind("<Button-1>", additionStuff)
button1.grid(row=4, column=1)


root.mainloop()

为什么我的功能现在打印出答案?

1 个答案:

答案 0 :(得分:1)

您需要在StringVar.get内调用additionStuff

def additionStuff(event):
    first = entry1_var.get()
    second = entry2_var.get()
    totalNumbers = (float(first) + float(second))
    print(totalNumbers)

否则,在用户有机会输入任何内容之前,您将获得第一个和第二个的值。