我是靠谱客的博主 虚心小蘑菇,最近开发中收集的这篇文章主要介绍python文件选择:tkFileDialog 基础 ,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 

看了下Tkinter的文档,对于Pop-up dialog有三类,现在用到的是tkFileDialog 
tkFileDialog有两种形式: 
一个是.askopenfilename(option=value, …) 这个是”打开”对话框 
另一个是:asksaveasfilename(option=value, …) 这个是另存为对话框

option参数如下: 
defaultextension = s 默认文件的扩展名 
filetypes = [(label1, pattern1), (label2, pattern2), …] 设置文件类型下拉菜单里的的选项 
initialdir = D 对话框中默认的路径 
initialfile = F 对话框中初始化显示的文件名 
parent = W 父对话框(由哪个窗口弹出就在哪个上端) 
title = T 弹出对话框的标题 
如果选中文件的话,确认后会显示文件的完整路径,否则单击取消的话会返回空字符串 
[python] view plain copy

#coding=UTF-8
# __author__ = '极致'
import Tkinter, Tkconstants, tkFileDialog
class TkFileDialogExample(Tkinter.Frame):
def __init__(self, root):
Tkinter.Frame.__init__(self, root)
# options for buttons
button_opt = {'fill': Tkconstants.BOTH, 'padx': 5, 'pady': 5}
# define buttons
Tkinter.Button(self, text='askopenfile', command=self.askopenfile).pack(**button_opt)
Tkinter.Button(self, text='askopenfilename', command=self.askopenfilename).pack(**button_opt)
Tkinter.Button(self, text='asksaveasfile', command=self.asksaveasfile).pack(**button_opt)
Tkinter.Button(self, text='asksaveasfilename', command=self.asksaveasfilename).pack(**button_opt)
Tkinter.Button(self, text='askdirectory', command=self.askdirectory).pack(**button_opt)
# define options for opening or saving a file
self.file_opt = options = {}
options['defaultextension'] = '.txt'
options['filetypes'] = [('all files', '.*'), ('text files', '.txt')]
options['initialdir'] = 'C:\'
options['initialfile'] = 'myfile.txt'
options['parent'] = root
options['title'] = 'This is a title'
# This is only available on the Macintosh, and only when Navigation Services are installed.
#options['message'] = 'message'
# if you use the multiple file version of the module functions this option is set automatically.
#options['multiple'] = 1
# defining options for opening a directory
self.dir_opt = options = {}
options['initialdir'] = 'C:\'
options['mustexist'] = False
options['parent'] = root
options['title'] = 'This is a title'
def askopenfile(self):
"""Returns an opened file in read mode."""
return tkFileDialog.askopenfile(mode='r', **self.file_opt)
def askopenfilename(self):
"""Returns an opened file in read mode.
This time the dialog just returns a filename and the file is opened by your own code.
"""
# get filename
filename = tkFileDialog.askopenfilename(**self.file_opt)
# open file on your own
if filename:
return open(filename, 'r')
def asksaveasfile(self):
"""Returns an opened file in write mode."""
return tkFileDialog.asksaveasfile(mode='w', **self.file_opt)
def asksaveasfilename(self):
"""Returns an opened file in write mode.
This time the dialog just returns a filename and the file is opened by your own code.
"""
# get filename
filename = tkFileDialog.asksaveasfilename(**self.file_opt)
# open file on your own
if filename:
return open(filename, 'w')
def askdirectory(self):
"""Returns a selected directoryname."""
return tkFileDialog.askdirectory(**self.dir_opt)
if __name__ == '__main__':
root = Tkinter.Tk()
TkFileDialogExample(root).pack()
root.mainloop()

最后

以上就是虚心小蘑菇为你收集整理的python文件选择:tkFileDialog 基础 的全部内容,希望文章能够帮你解决python文件选择:tkFileDialog 基础 所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部