调用 tkinter askopenfilename 方法后打开文件对话框冻结 [英] Open File Dialog freezes after tkinter askopenfilename method is called

查看:43
本文介绍了调用 tkinter askopenfilename 方法后打开文件对话框冻结的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图通过 tkinter.filedialog.askopenfilename() 从用户那里简单地获取文件名.该函数返回正常,下面的代码显示文件名正常,但对话框窗口在点击打开"或取消"后不会立即关闭,它会冻结.我使用的是 python 3.3.3 或 OSX 10.9.1 和 tcl/tK 8.5.9.

I'm trying to simply get a file name from the user by tkinter.filedialog.askopenfilename(). The function returns fine and the code below displays the file name okay but the dialog window doesn't close immediately after hitting 'open' or 'cancel', it freezes. I'm using python 3.3.3 or OSX 10.9.1 and tcl/tK 8.5.9.

from tkinter import *
from tkinter.messagebox import *
from tkinter.filedialog import *

top = Tk()
top.withdraw()

file_name = filedialog.askopenfilename()

print (file_name)

推荐答案

Adding root.update() after filedialog.askopenfilename() 让打开的文件对话框关闭选择文件后.

Adding root.update() after filedialog.askopenfilename() gets the open file dialog to close after the file is chosen.

root = tk.Tk()                     
root.withdraw()
file_path = filedialog.askopenfilename()
root.update()

参考:Tkinter askopenfilename() 不会关闭

这篇关于调用 tkinter askopenfilename 方法后打开文件对话框冻结的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆