Python 使用PyQt5 完成选择文件或目录的对话框方法

yipeiwu_com6年前Python基础

如下所示:

import sys
from PyQt5.QtWidgets import QMainWindow,QApplication,QTextEdit,QAction,QFileDialog
from PyQt5.QtGui import QIcon

class Example(QMainWindow):
  def __init__(self):
    super(Example, self).__init__()
    self.initUI()
  def initUI(self):
    self.textEdit = QTextEdit()
    self.setCentralWidget(self.textEdit)
    self.statusBar()

    openfile = QAction(QIcon(r'C:\Users\Administrator\PycharmProjects\QT\picture\文件.jpg'),'open',self)
    openfile.setShortcut("Ctrl + 0")
    openfile.setStatusTip('open new file')
    openfile.triggered.connect(self.showDialog)

    menubar = self.menuBar()
    filemune = menubar.addMenu('$File')
    filemune.addAction(openfile)

    self.setGeometry(300,300,300,300)
    self.setWindowTitle('FIEL dialog')
    self.show()
  def showDialog(self):
    fname = QFileDialog.getOpenFileName(self,'open file', '/')
    if fname[0]:
      try:
        f = open(fname[0], 'r')
        with f:
          data = f.read()
          self.textEdit.setText(data)
      except:
        self.textEdit.setText("打开文件失败,可能是文件内型错误")
if __name__ == "__main__":
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

以上这篇Python 使用PyQt5 完成选择文件或目录的对话框方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python自定义函数定义,参数,调用代码解析

函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print()等。也可以创建用户自定义函数。 函数定义 函数定义的简单规则: 函数代码块以def关键词开头...

在VS Code上搭建Python开发环境的方法

在VS Code上搭建Python开发环境的方法

1、下载安装 python https://www.python.org/downloads/windows/ web-based installer 在线安装 executable...

python list数据等间隔抽取并新建list存储的例子

原始数据如下: ['e3cd', 'e547', 'e63d', '0ffd', 'e39b', 'e539', 'e5be', '0dd2', 'e3d6', 'e52e', 'e...

Python中关键字global和nonlocal的区别详解

Python中关键字global和nonlocal的区别详解

前言 终于下定决心学习Python了。既然从头开始,就需要认认真真。 首先需要说的是,我是初学Python,这篇文章只是用于展示global和nonlocal关键字的区别,是很简单的知识...

Python使用cookielib模块操作cookie的实例教程

Python使用cookielib模块操作cookie的实例教程

cookielib是一个自动处理cookies的模块,如果我们在使用爬虫等技术的时候需要保存cookie,那么cookielib会让你事半功倍!他最常见的搭档模块就是python下的ur...