PtQt4标准对话框——QFileDialog

如何打开一个对话框让你选择所需要的文件呢?
这里有两种实现方式。

第一种:利用标准对话框的静态方法(static method)来实现
#coding=utf-8
from PyQt4.QtCore import *
from PyQt4.QtGui import *
import sys

app =   QApplication(sys.argv)
dialog  =   QFileDialog.getOpenFileName(None,"this is a static method",
                                        "/home","Python file(*.py);;Image(*.jpg *.png)")
print dialog
app.exec_()

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

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

#coding=utf-8
import  sys
from 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 filenames
sys.exit(app.exec_())

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


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

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


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值