Tkinter 我的命令无效,未定义错误变量
我有一个主窗口,它通过点击RFFE打开另一个窗口,在这个窗口中我有一个组合框,其中包含“修复模式”和“随机模式”,连接到打印按钮,但每次我点击打印时都会出现错误,未定义变量,请帮助Tkinter 我的命令无效,未定义错误变量,tkinter,command,var,Tkinter,Command,Var,我有一个主窗口,它通过点击RFFE打开另一个窗口,在这个窗口中我有一个组合框,其中包含“修复模式”和“随机模式”,连接到打印按钮,但每次我点击打印时都会出现错误,未定义变量,请帮助 from Tkinter import * from ttk import * class Main(Frame): def __init__(self, *args, **kwargs): Frame.__init__(self, *args, **kwargs) RFF
from Tkinter import *
from ttk import *
class Main(Frame):
def __init__(self, *args, **kwargs):
Frame.__init__(self, *args, **kwargs)
RFFE = Button(self, text="RFFE", command=self.rffe_button)
RFFE.pack()
quit = Button(self, text="QUIT", command=self.quit)
quit.pack()
def rffe_button(self):
var = RFFE()
def RFFE():
Up = Toplevel()
Up.geometry('470x280')
top_label = Label(Up, text='RFFE', font=('calibri', (14))).pack()
var = StringVar()
Sequence_menu_label = Label(Up, text='Trigger Sequences', font=('calibri', (14))).pack()
Sequence_menu = OptionMenu(Up, var, 'Select','Fix pattern','Random Pattern').pack()
var.set('Select')
Print = Button(Up, text='Print',command=callback).pack()
def callback():
print "You've selected: " + var.get()
if __name__ == "__main__":
root = Tk()
Main(root).pack(side="top", fill="both", expand=True)
root.mainloop()
在代码中,
var
是绑定到方法RFFE
范围的局部变量。为了在方法之间使用变量,您需要将变量作为参数传入,或者将变量设置为实例变量或全局变量
因为函数不是类的一部分,所以需要将它们设置为全局函数。在使用var
的位置插入global var