Tkinter 我的命令无效,未定义错误变量

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

我有一个主窗口,它通过点击RFFE打开另一个窗口,在这个窗口中我有一个组合框,其中包含“修复模式”和“随机模式”,连接到打印按钮,但每次我点击打印时都会出现错误,未定义变量,请帮助

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