zoukankan      html  css  js  c++  java
  • PyQt4文件对话框QFileDialog

    文件对话框允许用户选择文件或文件夹,被选择的文件可进行读或写操作。

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    import sys
    from PyQt4 import QtGui, QtCore 
    
    class OpenFile(QtGui.QMainWindow):
        def __init__(self, parent = None):
            QtGui.QWidget.__init__(self, parent)
            self.setGeometry(300, 300, 350, 300)
            self.setWindowTitle('Open File')
            self.textEdit = QtGui.QTextEdit()
            self.setCentralWidget(self.textEdit)
            self.statusBar()
            self.setFocus()
            
            exit = QtGui.QAction(QtGui.QIcon('open.png'), 'Open', self)
            exit.setShortcut('Ctrl+O')
            exit.setStatusTip('Open new File')
            self.connect(exit, QtCore.SIGNAL('triggered()'), self.showDialog)
            
            menubar = self.menuBar()
            file = menubar.addMenu('&File')
            file.addAction(exit)
            
        def showDialog(self):
            filename = QtGui.QFileDialog.getOpenFileName(self, 'Open file', './')
            file = open(filename)
            data = file.read()
            self.textEdit.setText(data)
            
    app = QtGui.QApplication(sys.argv)
    of = OpenFile()
    of.show()
    sys.exit(app.exec_())

    效果:

    我们在本示例程序中显示了一个菜单栏、一个状态栏和一个被设置为中心部件的文本编辑器。其中状态栏的状态信息只有在用户想要打开文件时才会显示。单击菜单栏中的Open选项将弹出文件对话框供用户选择文件。被选择的文件内容将被显示在文本编辑器部件中。

    class OpenFile(QtGui.QMainWindow):
        ……
            self.textEdit = QtGui.QTextEdit()
            self.setCentralWidget(self.textEdit)

    本示例程序时基于QMainWindow窗口部件的,因为我们需要将文本编辑器设置为中心部件(QWidget类没有提供setCentralWidget方法)。无须依赖布局管理器,QMainWindow即可轻松完成配置中心部件的工作(使用setCentralWidget方法)。

            filename = QtGui.QFileDialog.getOpenFileName(self, 'Open file', './')

    该语句将弹出文件对话框。getOpenFileName()方法的第一个字符串参数'Open File'将显示在弹出对话框的标题栏。第二个字符串参数用来指定对话框的工作目录。默认情况下文件过滤器被设置为不过滤任何文件(所有工作目录中的文件/文件夹都会被显示)。

            file = open(filename)
            data = file.read()
            self.textEdit.setText(data)

    以上三行语句将读取被选择文件并将其内容显示在文本编译器中。

  • 相关阅读:
    update语句条件判断更新
    添加ll命令
    在php cli下可以使用 STDIN 来实现标准输入
    windows修改PowerShell(命令提示符)默认中文编码方式
    命令创建控制器
    windows系统关闭某个端口的服务(以443端口为例子)
    unable to create ...erroractionpreference....
    【抓包工具】使用Fiddler关于“由于目标计算机积极拒绝,无法连接。”的解决方案
    切换国内镜像:Content-Length mismatch, received 431737 bytes out of the expected 760836
    匹配函数函数备注
  • 原文地址:https://www.cnblogs.com/moonlightpoet/p/5354727.html
Copyright © 2011-2022 走看看