如何让 Tkinter 文件对话框获得焦点?

tkinterpythongui-programming更新于 2025/6/19 6:04:17

Tkinter Python 库可用于创建功能性和特色应用程序。它有许多用于不同功能的包和函数。tkinter 中的 filedialog 包允许与本地机器上的文件系统进行交互。使用 filedialog,我们可以访问系统中的任何文件并使用它来执行 CRUD 操作。

要让文件对话框获得焦点,我们可以有一个与对话框关联的父窗口。如果主窗口在顶部全局定义,则相关小部件将自动聚焦在其他窗口的顶部。

示例

在此示例中,我们创建了一个按钮,它将打开一个对话框以从本地系统中选择一个文件。

# 导入 tkinter 库
from tkinter import *
from tkinter import filedialog
from PIL import Image, ImageTk

# 创建 tkinter 框架的实例
win = Tk()

# 设置 Tkinter 窗口的大小
win.geometry("700x350")

# 设置窗口的标题
win.title("File Explorer")

# 定义打开文件对话框的函数
def open_file():
   win.filename = filedialog.askopenfilename(title="选择文件", filetypes=(("jpg 文件", "*.jpg"), ("所有文件", "*.*")))]

# 创建一个按钮小部件
b1 = Button(win, text="打开", command=open_file)
b1.place(relx=.5, depend=.5, anchor=CENTER)
win.mainloop()

输出

运行上述代码将显示一个带有按钮的窗口。

单击按钮后,将显示一个对话框,用户可以从中从本地系统中选择一个文件。


相关文章


有用资源