添加、减去和存储条目小部件';s输入值(Tkinter,Python2.7)

添加、减去和存储条目小部件';s输入值(Tkinter,Python2.7),python,tkinter,Python,Tkinter,在这个程序中,我创建了三个输入小部件,我可以在其中输入任何值,并通过方程式1st_entrybox-2nd_entrybox+3rd_entrybox将它们连接起来。单击“总计”按钮后,我将在名为“能量跨度”的框中获得总计答案(名称与我的项目相关)。但我没有得到答案。你能帮忙吗 提前谢谢 这是我的密码: from __future__ import division from Tkinter import * root = Tk() btn1=Frame(root, width=600, h

在这个程序中,我创建了三个输入小部件,我可以在其中输入任何值,并通过方程式1st_entrybox-2nd_entrybox+3rd_entrybox将它们连接起来。单击“总计”按钮后,我将在名为“能量跨度”的框中获得总计答案(名称与我的项目相关)。但我没有得到答案。你能帮忙吗

提前谢谢

这是我的密码:

from __future__ import division
from Tkinter import *
root = Tk()


btn1=Frame(root, width=600, height=600, bd=16, relief="raise")
btn1.pack(side=LEFT)

btn2=Frame(root, width=600, height=600, bd=16, relief="raise")
btn2.pack(side=LEFT)


def Sum():
    if var.get == 1:
        Qty1 = float(Trn.get())
        Qty2 = float(Intr.get())
        Qty3 = float(delG.get())
        Sumup = Qty1 - Qty2 + Qty3 
        Total.set(Sumup)

def Reset():
    Trn.set("0")
    Intr.set("0")
    delG.set("0")
    Total.set("0")


var = IntVar()
Trn = IntVar()
Intr = IntVar()
delG = IntVar()
Total = IntVar()


rb1 = Radiobutton(btn1, variable=var, value=1,
             font=('Helvetica',22,'bold')).grid(row=0, column=0, sticky=W)

lbl = Label(btn1, font=('Helvetica',22,'bold'), text="TS", 
  fg="black").grid(row=1, column=0)

ent = Entry(btn1, font=('Helvetica', 22, 'bold'), bd=4, width=13, bg= 
  "white",textvariable=Trn).grid(row=1, column=1)

lbl1 = Label(btn1, font=('Helvetica',22,'bold'), text="INT", fg="black", 
   bd=16).grid(row=2, column=0)

ent1 = Entry(btn1, font=('Helvetica', 22, 'bold'), bd=4, width=13, bg= 
  "white",textvariable=Intr).grid(row=2, column=1)

lbl2 = Label(btn1, font=('Helvetica',22,'bold'), text="Delta G", fg="black", 
   bd=16).grid(row=3, column=0, sticky=W)

ent2 = Entry(btn1, font=('Helvetica', 22, 'bold'), bd=4, width=13, bg= "white",
          textvariable=delG).grid(row=3, column=1)

lblTotal = Label(btn1, font=('Helvetica', 22, 'bold'),text = "Energy Span", 
       fg="black", bd=16, justify="left")
lblTotal.grid(row=4, column=0)

lblans = Entry(btn1, font=('Helvetica',22,'bold'), bd=4, width=12, 
  bg="white", textvariable=Total, relief= "sunken").grid(row=5,column=1)

btnTotal = Button(btn2,pady=8, bd=8, fg="black", font=('Helvetica', 25, 
'bold'), width=16,height=2,text = "Total", bg="white", 
       command=Sum).grid(row=1, column=0) 

btnReset = Button(btn2,pady=8, bd=8, fg="black", font=('Helvetica', 25, 
 'bold'), width=16,height=2,text = "Reset", bg="white", 
       command=Reset).grid(row=2, column=0) 

root.mainloop()

输出的图像:

您忘记调用
。get
,因为您没有把括号放进去。你需要改变

var.get == 1


乍一看,
如果var.get==1
对我来说并不合适。所有其他的
get
s都有括号,但是这个没有。当我在windows(空闲)中运行它时,它工作了,但是当尝试在Linux中运行它时,它给了我以下错误。你能告诉我为什么吗?如果var.get()==1:TypeError:unbound方法get()必须以IntVar实例作为第一个参数调用(而不是获取任何参数),我正在使用Python 2.7。@zih检查Python的idle版本和TERMINAL版本。它们可能不同。我已经检查过了。它们是一样的。
var.get() == 1