无法从tkinter widget.after函数传递参数
我正在使用tkinter构建的GUI的一部分有一个弹出窗口,显示“请在程序运行时等待”。然后完成后,窗户便消失了。我正在使用widget.after命令打开窗口并运行命令。但是,如果我通过函数调用参数,则永远不会出现弹出窗口。这是一个例子:
def backupWindow
self.restoreCB = Toplevel()
message = "Please wait while backup runs"
Label(self.restoreCB, text=message, padx=100, pady=20).pack()
widget.after(10, self.runBackup)
def runBackup(self):
<backup code>
self.backupCB.destroy()
这样可以很好地运行并完成我想要的操作,在运行备份时弹出窗口,然后在备份后关闭窗口。但是,如果我从widget ..传递了and参数,就像下面的代码一样,“
please wait”消息将永远不会出现。
def backupWindow
self.restoreCB = Toplevel()
message = "Please wait while backup runs"
Label(self.restoreCB, text=message, padx=100, pady=20).pack()
widget.after(10, self.runBackup(mybackup))
def runBackup(self,mybackup):
<backup code using mybackup>
self.backupCB.destroy()