当前位置:   article > 正文

python-filedialog 文件/文件夹 选择器_python filedialog

python filedialog

filedialog提供一系列简易的获取文件路径的方法,它会调用操作系统的文件管理窗口,返回文件路径字符串(字符串列表)、目录字符串或者打开的文件对象(对象列表)。

  1. from tkinter.filedialog import *
  2. def askopenfilename(**options):
  3. "返回一个文件路径字符串"
  4. return Open(**options).show()
  5. def asksaveasfilename(**options):
  6. "返回一个文件路径字符串,文件名是自己输入的"
  7. return SaveAs(**options).show()
  8. def askopenfilenames(**options):
  9. "支持多选,返回一个文件路径字符串列表,如果取消的话返回一个空列表"
  10. options["multiple"]=1
  11. return Open(**options).show()
  12. # FIXME: are the following perhaps a bit too convenient?
  13. def askopenfile(mode = "r", **options):
  14. "返回一个只读文件对象"
  15. filename = Open(**options).show()
  16. if filename:
  17. return open(filename, mode)
  18. return None
  19. def askopenfiles(mode = "r", **options):
  20. "支持多选,返回一个只读文件对象列表,如果取消的话返回一个空列表"
  21. files = askopenfilenames(**options)
  22. if files:
  23. ofiles=[]
  24. for filename in files:
  25. ofiles.append(open(filename, mode))
  26. files=ofiles
  27. return files
  28. def asksaveasfile(mode = "w", **options):
  29. "返回一个可写入的文件对象"
  30. filename = SaveAs(**options).show()
  31. if filename:
  32. return open(filename, mode)
  33. return None
  34. def askdirectory (**options):
  35. "返回一个目录路径字符串"
  36. return Directory(**options).show()

实例代码演示

  1. from tkinter import *
  2. import tkinter as tk
  3. import tkinter.filedialog
  4. from PIL import Image,ImageTk
  5. #选择并显示图片
  6. def choosepic():
  7. path_ = tkinter.filedialog.askopenfilename() #返回一个文件路径的字符串
  8. path.set(path_)
  9. #print(path)
  10. img_open = Image.open(entry.get())
  11. # img = ImageTk.PhotoImage(img_open.resize((400,400)))
  12. img = ImageTk.PhotoImage(img_open)
  13. lableShowImage.config(image=img)
  14. lableShowImage.image = img
  15. if __name__ == '__main__':
  16. #生成tk界面 app即主窗口
  17. app = tk.Tk()
  18. #修改窗口titile
  19. app.title("显示图片")
  20. #设置主窗口的大小和位置
  21. app.geometry("700x400")
  22. #Entry widget which allows displaying simple text.
  23. a=tk.Label(app, text='请选择显示的图片:')
  24. a.pack()
  25. path = tk.StringVar()
  26. entry = tk.Entry(app, state='readonly', text=path, width = 80)
  27. entry.pack()
  28. #使用Label显示图片
  29. lableShowImage = tk.Label(app)
  30. lableShowImage.pack()
  31. #选择图片的按钮
  32. buttonSelImage = tk.Button(app, text='选择图片', command=choosepic)
  33. buttonSelImage.pack()
  34. #buttonSelImage.pack(side=tk.BOTTOM)
  35. #Call the mainloop of Tk.
  36. app.mainloop()

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/677172
推荐阅读
相关标签
  

闽ICP备14008679号