tkinter回调类型错误中的异常

时间:2017-10-01 11:03:37

标签: python tkinter

我无法打印标签的结果答案 我收到错误add()缺少位置参数self

tracback

import tkinter
from tkinter import Entry
def add(self):
    x1=float(Entry.get(e))
    y1=float(Entry.get(e1))
    ans=x1+y1
    labr.config(text="Result is %d"%ans)
def sub():
    x1=float(Entry.get(e))
    y1=float(Entry.get(e1))
    ans=x1-y1
    print("answer is ",ans)
window=tkinter.Tk()
window.title("sample calculator")
window.geometry("300x300")
lab=tkinter.Label(window,text="calculator")
e=tkinter.Entry(window)
e1=tkinter.Entry(window)
b=tkinter.Button(window,bg="green",text="add",command=add)
b1=tkinter.Button(window,bg="blue",text="subtract",command=sub)
labr=tkinter.Label(window)
lab.pack()
e.pack()
e1.pack()
b.pack()
b1.pack()
window.mainloop()

1 个答案:

答案 0 :(得分:1)

您的函数add只需要一个参数self,但按钮b会在您点击它时调用add(),因此会出现关于缺少参数的错误。

我认为你是从一个类中复制了这个函数,但是你忘记从参数中删除self,因为你没有在add中使用它。