Tkinter条目是一个整数

时间:2015-12-03 20:41:36

标签: python tkinter

我用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.我错过了什么?

1 个答案:

答案 0 :(得分:0)

使用 E3.get()获取Entry小部件值是正确的。但错误NoneType object has no attribute get是将Grid语句与创建窗口小部件放在同一行上的结果。总是将两者分开。所以使用

E3 = T.Entry()
E3.grid(row=2,column=1)

否则它会将窗口小部件的值设置为None,因为这是Grid语句返回的内容。