让Tkinter小部件成为焦点

Ali*_*Ali 11 python user-interface tkinter

我有一个脚本,使用Tkinter弹出一个带有消息的窗口.我如何确保它获得焦点,以便用户不会错过它,并明确地必须关闭窗口.代码是:

root = Tk()
to_read = "Stuff" 
w = Label(root, text=to_read)
w.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

ars*_*ars 17

你可以使用focus_force方法.请参阅以下内容:

但请注意文档:

w.focus_force()

强制输入焦点到窗口小部件.这是不礼貌的.最好等待窗口管理器为您提供焦点.另请参见下面的.grab_set_global().

更新:它应该工作root.例如,尝试运行以下代码.它将创建一个窗口,您可以切换焦点.5秒后,它将尝试抓住焦点.

from Tkinter import *

root = Tk()
root.after(5000, lambda: root.focus_force())
root.mainloop()
Run Code Online (Sandbox Code Playgroud)