首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我想打开一个文件对话框,并将所选文件的位置作为参数传递给tkinter,以便在gui上显示。

我想打开一个文件对话框,并将所选文件的位置作为参数传递给tkinter,以便在gui上显示。
EN

Stack Overflow用户
提问于 2020-07-01 19:40:19
回答 1查看 23关注 0票数 0

我面临的问题是,文件对话返回的是_io.TextIOWrapper对象,而tkinter将文件的位置作为字符串。

我尝试了所有方法将此_io.TextIOWrapper转换为字符串,但都失败了。

帮帮我!!

代码语言:javascript
运行
AI代码解释
复制
import tkinter as tk
import tkinter.filedialog

from PIL import Image, ImageTk


class App(tk.Tk):
    def __init__(self):
      super().__init__()

      self.main = tk.Frame(self)
      self.main.grid(row=0, column=0)

      dial = tkinter.filedialog.askopenfile()

      self.disp_img = Image.open(dial).resize((400, 400))
      self.disp_img = ImageTk.PhotoImage(self.disp_img)

      self.img_label = tk.Label(self.main, image=self.disp_img)
      self.img_label.grid(row=0, column=0)


if __name__ == '__main__':
   app = App()
   app.withdraw()
   app.mainloop()
EN

回答 1

Stack Overflow用户

发布于 2020-07-02 04:01:50

正如在对该问题的评论中所说的,您希望使用askopenfilename()而不是askopenfile()。或者,TextIOWrapper对象有一个名为name的变量,其中包含文件名。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62684235

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文