PtQt4标准对话框——QFileDialog

来源:互联网 发布:pace.js 在线演示 编辑:程序博客网 时间:2024/06/06 04:01
如何打开一个对话框让你选择所需要的文件呢?
这里有两种实现方式。

第一种:利用标准对话框的静态方法(static method)来实现
#coding=utf-8from PyQt4.QtCore import *from PyQt4.QtGui import *import sysapp =   QApplication(sys.argv)dialog  =   QFileDialog.getOpenFileName(None,"this is a static method",                                        "/home","Python file(*.py);;Image(*.jpg *.png)")print dialogapp.exec_()

getOpenFileName是QFileDialog的一个静态方法。
它的原型是:
QStringgetOpenFileName (QWidget parent = None, QString caption = QString(), QString dir = QString(), QString filter = QString(), Options options = 0)
Caption=该对话框的标题,dir=指定文件名,filter=筛选器
运行该程序得到的效果图如下

第二种:我们还可以自定义该对话框并设置相关属性。

#coding=utf-8import  sysfrom PyQt4.QtGui import *from PyQt4.QtCore import *app = QApplication(sys.argv)dialog  =   QFileDialog(None,"Open file dialog","/home",                        "Python files(*.py);;Images (*.png *.xpm *.jpg);;Text(*.txt);;XML files (*.xml)")label   =   QLabel(dialog)dialog.setFileMode(QFileDialog.AnyFile)#设置访问文件属性dialog.setViewMode(QFileDialog.Detail)#设置视图属性dialog.setWindowTitle("this is a customed dialog")#设置该对话框的标题dialog.setLabelText(1,"the fil name is")#修改默认标签的值dialog.setNameFilter("XML files (*.xml);;Text files(*.txt)")#重新设置筛选器dialog.selectFilter("Text files(*.txt)")#选择优先显示的筛选器dialog.setDirectory("H:")#设置目录名,这里设置为H盘dialog.selectFile("Text.txt")#如果在当前目录下存在名为“Text.txt”的文件。则选中它if(dialog.exec_()):    filenames   =   dialog.selectedFiles()[0]print filenamessys.exit(app.exec_())

1.文件访问有多种属性:


2.视图属性:
视图属性分为列表类型和详细类型
详细类型不仅显示图标和文件名,另外还会显示文件大小和修改日期

自定义的文件选择对话框能够设置很多自己想要的属性,从哪个目录开始打开,随时设置需要的筛选器,设置想要打开的文件名,这些都很方便。


阅读全文
1 0
原创粉丝点击