全局变量过程
Global variable process
我正在使用 Tkinter 创建 GUI 的重置按钮。我的目的是将标签的所有值重置为 0 或消失。
为了重置标签的值,我将标签定义为全局变量。
labelP = None
labelV = None
labelH = None
labelT = None
主要功能:
def predict():
global labelP
global labelV
global labelH
global labelT
...
labelP = Label(mainframe, text = np.array(A[1,0]), width=5, font = 'Arial 10 bold').grid(column=2, row=5, sticky=W)
labelV = Label(mainframe, text = np.array(A[1,1]), width=5, font = 'Arial 10 bold').grid(column=2, row=6, sticky=W)
labelH = Label(mainframe, text = np.array(A[1,2]), width=5, font = 'Arial 10 bold').grid(column=2, row=7, sticky=W)
labelT = Label(mainframe, text = np.array(A[1,3]), width=5, font = 'Arial 10 bold').grid(column=2, row=8, sticky=W)
...
重置功能:
def reset():
global labelP
global labelV
global labelH
global labelT
labelP.delete()
labelV.delete()
labelH.delete()
labelT.delete()
重置按钮:
btn2 = Button(mainframe, text="Reset", command = reset).grid(column=1, row=9, sticky=W)
虽然我也尝试了labelP.config()
、labelP.set("")
、labelP.destroy()
,但我总是得到错误:
AttributeError: 'NoneType' object has no attribute ...
我应该为全局变量定义什么?
谢谢
这是我的代码:https://gist.github.com/TonyS0n/8ee8db392196a405c2ef27ac44df3059
您不能使用一行来初始化和布局小部件。你必须把它放在 2 行上,像这样:
labelP = Label(mainframe, text = np.array(A[1,0]), width=5, font = 'Arial 10 bold')
labelP.grid(column=2, row=5, sticky=W)
我正在使用 Tkinter 创建 GUI 的重置按钮。我的目的是将标签的所有值重置为 0 或消失。
为了重置标签的值,我将标签定义为全局变量。
labelP = None
labelV = None
labelH = None
labelT = None
主要功能:
def predict():
global labelP
global labelV
global labelH
global labelT
...
labelP = Label(mainframe, text = np.array(A[1,0]), width=5, font = 'Arial 10 bold').grid(column=2, row=5, sticky=W)
labelV = Label(mainframe, text = np.array(A[1,1]), width=5, font = 'Arial 10 bold').grid(column=2, row=6, sticky=W)
labelH = Label(mainframe, text = np.array(A[1,2]), width=5, font = 'Arial 10 bold').grid(column=2, row=7, sticky=W)
labelT = Label(mainframe, text = np.array(A[1,3]), width=5, font = 'Arial 10 bold').grid(column=2, row=8, sticky=W)
...
重置功能:
def reset():
global labelP
global labelV
global labelH
global labelT
labelP.delete()
labelV.delete()
labelH.delete()
labelT.delete()
重置按钮:
btn2 = Button(mainframe, text="Reset", command = reset).grid(column=1, row=9, sticky=W)
虽然我也尝试了labelP.config()
、labelP.set("")
、labelP.destroy()
,但我总是得到错误:
AttributeError: 'NoneType' object has no attribute ...
我应该为全局变量定义什么?
谢谢 这是我的代码:https://gist.github.com/TonyS0n/8ee8db392196a405c2ef27ac44df3059
您不能使用一行来初始化和布局小部件。你必须把它放在 2 行上,像这样:
labelP = Label(mainframe, text = np.array(A[1,0]), width=5, font = 'Arial 10 bold')
labelP.grid(column=2, row=5, sticky=W)