如何在 Tkinter 中将窗口焦点保持在新 Toplevel() 窗口中?


Tkinter toplevel 类包含 toplevel 窗口,它是除主窗口以外的子窗口。每当我们创建一个 toplevel 窗口时,它只会显示在主窗口之上以及其中定义的小部件。

为了使 toplevel 窗口保持焦点,我们可以使用 grab_set() 方法。它始终让 toplevel 窗口位于所有其他窗口之上。

实例

#Import the tkinter library
from tkinter import *

#Create an instance of tkinter frame
win = Tk()
win.geometry("700x350")

def open_win():
   top = Toplevel(win)
   top.geometry("700x250")
   Label(top, text= "Hey Folks!", font= ('Helvetica 14 bold')).pack()
   top.grab_set()

#Create a Label to print the Name
label= Label(win, text="Click the below Button to open the Popup", font= ('Helvetica 18 bold'))
label.pack(pady= 30)

#Create a Button
button= Button(win, text= "Click Me", command= open_win, font= ('Helvetica 14 bold'), foreground= 'OrangeRed3', background= "white")
button.pack(pady=50)
win.mainloop()

输出

运行以上代码将显示一个包含一个用于打开弹出窗口的按钮的窗口。

现在,单击该按钮以打开一个弹出窗口。

更新时间: 2021 年 5 月 25 日

6K+ 浏览量

开启你的 职业生涯

完成课程并获得认证

开始
广告