【发布时间】:2013-06-25 10:22:07
【问题描述】:
我正在使用 python 3.3 中的 tkinter 模块我对此比较陌生,并且正在使用输入框。由于某种原因,当我运行以下代码时,我收到一条错误消息,指出 AttributeError:'NoneType' 对象没有属性 'get'。有人可以向我解释为什么吗?我用一个条目做了一个类似的程序,效果很好。
from tkinter import *
master =Tk()
class quad(object):
def __init__(self, ae, be, ce):
self.ae = ae
self.be = be
self.ce = ce
def calculate(self):
a = self.ae.get()
b = self.be.get()
c = self.ce.get()
A = float(a)
B = float(b)
C = float(c)
D = (-B)/(2*A)
E = ((B**2 -4*A*C)**(.5))/(2*A)
first = D + E
second = D - E
print(first, "\n", second)
Label(master, text='A=').grid(row=0, column=0)
Label(master, text='B=').grid(row=1, column=0)
Label(master, text='C=').grid(row=2, column=0)
ae = Entry(master).grid(row=0, column=1)
be = Entry(master).grid(row=1, column=1)
ce = Entry(master).grid(row=2, column=1)
model =quad(ae, be, ce)
Button(master, text='submit', width=10, command=model.calculate).grid(row=3, column=1, sticky=W)
mainloop()
【问题讨论】:
-
这个问题的变体已经在这个网站上被问过好几次了。例如Python TkInter - AttributeError: 'NoneType' object has no attribute 'get'.
标签: python tkinter tkinter-entry