我有一个脚本,使用Tkinter弹出一个消息窗口。我如何确保它需要关注,以便用户不会错过它,并明确地必须关闭窗口。代码是:使Tkinter小部件成为焦点
root = Tk()
to_read = "Stuff"
w = Label(root, text=to_read)
w.pack()
root.mainloop()
我有一个脚本,使用Tkinter弹出一个消息窗口。我如何确保它需要关注,以便用户不会错过它,并明确地必须关闭窗口。代码是:使Tkinter小部件成为焦点
root = Tk()
to_read = "Stuff"
w = Label(root, text=to_read)
w.pack()
root.mainloop()
您可以使用focus_force
方法。请参阅以下内容:
但需要注意的文档:
w.focus_force()
强制输入焦点的部件。这是不礼貌的。最好等待窗口经理给你关注。另请参阅下面的.grab_set_global()。
更新:它应该在root
上工作。例如,尝试运行以下代码。它会创建一个窗口,您可以切换焦点。 5秒后,它会尝试抓住焦点。
from Tkinter import *
root = Tk()
root.after(5000, lambda: root.focus_force())
root.mainloop()
的命令就可以了,但如果它在我的代码去?看来我的格式将是root.focus_force,但它会给出一个Attribute错误。 – Ali 2010-10-01 20:11:39
@Ali:我更新了问题以回答您的评论。 – ars 2010-10-01 20:19:15
它现在似乎在工作。但是我忽略了.after函数。谢谢。 – Ali 2010-10-01 20:37:42