我使用以下示例代码生成两个窗口:
import Tkinter as tk
class Demo1:
def __init__(self, master):
self.master = master
self.frame = tk.Frame(self.master)
self.button1 = tk.Button(self.frame, text = 'New Window', width = 25, command = self.new_window)
self.button1.pack()
self.frame.pack()
def new_window(self):
print 1
self.newWindow = tk.Toplevel(self.master)
print 2
self.app = Demo2(self.newWindow)
print 3
class Demo2:
def __init__(self, master):
self.master = master
self.frame = tk.Frame(self.master)
self.quitButton = tk.Button(self.frame, text = 'Quit', width = 25, command = self.close_windows)
self.quitButton.pack()
self.frame.pack()
def close_windows(self):
self.master.destroy()
def main():
root = tk.Tk()
app = Demo1(root)
root.mainloop()
if __name__ == '__main__':
main()
我希望在调用new_window()
方法时打印“1”(或者可能是“2”)。我希望在Demo2
关闭时打印“3”!
但是通过按button1
,我执行了所有三个print语句。
我怎么办?你知道吗
您可以使用
wait_window
方法等待销毁第二个窗口,然后再继续执行第一个窗口中的下一个语句。你知道吗我已经修改了你的代码使它工作。希望有帮助-
相关问题 更多 >
编程相关推荐