我用Tkinter创建了一个GUI,允许有人输入一个字符串和两个整数,然后当按下一个按钮将数据从一个文件提取到另一个文件时,它会运行一个代码,但我一直遇到问题,我就是这样不确定如何解决它。
def copy(Orn, Orc, Stage):
for a in range(1, 10):
for b in range(1,Stage):
import Tkinter as T
top= T.Tk()
L1=T.Label(text="Order Number").grid(row=0, column=0)
E1=T.Entry().grid(row=0,column=1)
L2=T.Label(text="Number of Compounds").grid(row=1,column=0)
E2=T.Entry().grid(row=1,column=1)
L3=T.Label(text="Number of Stages").grid(row=2,column=0)
E3=T.Entry().grid(row=2, column=1)
B1=T.Button(text="Extract", command=copy(E1, E2, E3)).grid(row=3,column=0)
top.mainloop()
我收到错误range() integer end argument expected, got NoneType.
如何将条目值变为整数?我也尝试过:
e3=E3.get()
正如某人的类似问题所示,但后来我收到错误:NoneType object has no attribute get.
我错过了什么?
答案 0 :(得分:0)
使用 E3.get()获取Entry小部件值是正确的。但错误NoneType object has no attribute get
是将Grid语句与创建窗口小部件放在同一行上的结果。总是将两者分开。所以使用
E3 = T.Entry()
E3.grid(row=2,column=1)
否则它会将窗口小部件的值设置为None,因为这是Grid语句返回的内容。