我在Python中使用Tkinter来显示一个对话框。显示对话框后,无论用户是否关闭了对话框,都应执行后续代码。
我尝试使用线程在新线程中创建对话框,但它似乎不起作用。我想我需要将后续代码封装在一个我不希望的单独线程中。
def alert(title, message):
box = Tk()
box.title(title)
Message(box, text=message, bg='red',
fg='ivory').pack(padx=1, pady=1) #, relief=GROOVE
Button(box, text="Close", command=box.destroy).pack(side=BOTTOM)
box.geometry('300x150')
thread.start_new_thread(box.mainloop())
hello()
def hello():
print 'hello!'
上面代码的问题是'你好!'只有在用户解除警告框后才会打印。如何修改我的代码,无论对话框的状态如何,都要执行hello()(或任何后续代码)?
答案 0 :(得分:0)
试试这个:
def alert(title, message):
box = Tk()
box.title(title)
Message(box, text=message, bg='red',
fg='ivory').pack(padx=1, pady=1) #, relief=GROOVE
Button(box, text="Close", command=box.destroy).pack(side=BOTTOM)
box.geometry('300x150')
box.after(10, hello)
box.mainloop()