python GUI库图形界面开发之PyQt5打开保存对话框QFileDialog详细使用方法与实例

  

PyQt5打开保存对话框QFileDialog介绍

  

QFIleDialog是用于打开和保存文件的标准对话框.QFileDialog类继承自QDialog类

  

QFileDialog在打开文件时使用可文件过滤器,用于显示指定扩展名的文件,也可以设置使用QFileDialog打开文件时的起始目录和指定扩展名的文件

  

QFileDialog类中的常用方法

           方法   描述               getOpenFileName ()   返回用户所选择文件的名称,并打开该文件         getSaveFileName ()   使用用户选择的文件名保存文件         setFileMode ()   可以选择的文件类型,枚举常量是:            QFileDialog.AnyFile:任何文件            QFileDialog.ExistingFile:已存在的文件            QFileDialog.Directory:文件目录            QFileDialog.ExistingFiles:已经存在的多个文件         setFilter ()   设置过滤器,只显示过滤器允许的文件类型            

QFileDialog使用实例

        导入系统   从PyQt5。QtCore进口*   从PyQt5。QtWidgets进口*   从PyQt5。QtGui进口*      类fileDialogdemo (QWidget):   def __init__(自我,父=None):   超级(fileDialogdemo,自我). __init__(父)      #垂直布的局   布局=QVBoxLayout ()      #创建按钮,绑定自定义的槽函数,添加到布局中   self.btn=QPushButton(“加载图片”)   self.btn.clicked.connect (self.getimage)   layout.addWidget (self.btn)      #创建标签,添加到布局中   self.le=QLabel (”)   layout.addWidget (self.le)      #创建按钮,绑定自定义的槽函数,添加到布的局   self.btn1=QPushButton('加载文本文件的)   self.btn1.clicked.connect (self.getFiles)   layout.addWidget (self.btn1)      #实例化多行文本框,添加到布的局   self。contents=QTextEdit ()   layout.addWidget (self。contents)      #设置主窗口的布局及标题   self.setLayout(布局)   自我。setWindowTitle(“文件对话框例子”)      def getimage(自我):   #从C盘打开文件格式(* . jpg *。gif *。png * jpeg)文件,返回路径   image_file _=QFileDialog。getOpenFileName(自我,“打开文件”,“C: \ \ ', ' * . jpg图像文件(*。gif *。png * jpeg)”)   #设置标签的图片   self.le.setPixmap (QPixmap (image_file))   def getfile(自我):   #实例化QFileDialog   挖=QFileDialog ()   #设置可以打开任何文件   dig.setFileMode (QFileDialog.AnyFile)   #文件过滤   dig.setFilter (QDir.Files)      如果dig.exec_ ():   #接受选中文件的路径,默认为列的表   文件名=dig.selectedFiles ()   #列表中的第一个元素即是文件路径,以只读的方式打开文件   f=开放(文件名[0],“r”)      f:   #接受读取的内容,并显示到多行文本框中   data=https://www.yisu.com/zixun/f.read ()   self.contents.setText(数据)   if __name__==癬_main__”:   应用=QApplication (sys.argv)   前女友=fileDialogdemo ()   ex.show ()   sys.exit (app.exec_ ())      

效果如下

  

 python GUI库图形界面开发之PyQt5打开保存对话框QFileDialog详细使用方法与实例

  

 python GUI库图形界面开发之PyQt5打开保存对话框QFileDialog详细使用方法与实例

  

 python GUI库图形界面开发之PyQt5打开保存对话框QFileDialog详细使用方法与实例

  

代码分析

  

在这个例子里,通过文件对话框来选择文件,其中第一个文件对话框只允许打开图片文件,并把加载的图片显示在标签上,第二个文件对话框只允许打开文本文件,并把打开的文本内容显示在文本框内

  

第一个按钮使用QFileDialog.getOpenFilename(),调用文件对话框来显示图片,并显示在一个标签控件中,它负责打开c盘目录下的为文件,核心代码如下

        #从C盘打开文件格式(* . jpg *。gif *。png * jpeg)文件,返回路径   image_file _=QFileDialog。getOpenFileName(自我,“打开文件”,“C: \ \ ', ' * . jpg图像文件(*。gif *。png * jpeg)”)   #设置标签的图片   self.le.setPixmap (QPixmap (image_file)

python GUI库图形界面开发之PyQt5打开保存对话框QFileDialog详细使用方法与实例