• QtGui.QFileDialog


    The QtGui.QFileDialog is a dialog that allows users to select files or directories. The files can be selected for both opening and saving.

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    """
    ZetCode PyQt4 tutorial 
    
    In this example, we select a file with a
    QtGui.QFileDialog and display its contents
    in a QtGui.QTextEdit.
    
    author: Jan Bodnar
    website: zetcode.com 
    last edited: October 2011
    """
    
    import sys
    from PyQt4 import QtGui
    
    
    class Example(QtGui.QMainWindow):
        
        def __init__(self):
            super(Example, self).__init__()
            
            self.initUI()
            
        def initUI(self):      
    
            self.textEdit = QtGui.QTextEdit()
            self.setCentralWidget(self.textEdit)
            self.statusBar()
    
            openFile = QtGui.QAction(QtGui.QIcon('open.png'), 'Open', self)
            openFile.setShortcut('Ctrl+O')
            openFile.setStatusTip('Open new File')
            openFile.triggered.connect(self.showDialog)
    
            menubar = self.menuBar()
            fileMenu = menubar.addMenu('&File')
            fileMenu.addAction(openFile)       
            
            self.setGeometry(300, 300, 350, 300)
            self.setWindowTitle('File dialog')
            self.show()
            
        def showDialog(self):
    
            fname = QtGui.QFileDialog.getOpenFileName(self, 'Open file', 
                    '/home')
            
            f = open(fname, 'r')
            
            with f:        
                data = f.read()
                self.textEdit.setText(data) 
                                    
            
    def main():
        
        app = QtGui.QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())
    
    
    if __name__ == '__main__':
        main()
    

    The example shows a menubar, centrally set text edit widget and a statusbar. The menu item shows the QtGui.QFileDialog which is used to select a file. The contents of the file are loaded into the text edit widget.

    class Example(QtGui.QMainWindow):
        
        def __init__(self):
            super(Example, self).__init__()
    

    The example is based on the QtGui.QMainWindow widget because we centrally set the text edit widget.

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

    We pop up the QtGui.QFileDialog. The first string in the getOpenFileName() method is the caption. The second string specifies the dialog working directory. By default, the file filter is set to All files (*).

    f = open(fname, 'r')
    
    with f:        
        data = f.read()
        self.textEdit.setText(data) 
    

    The selected file name is read and the contents of the file are set to the text edit widget.

    File DialogFigure: File dialog

  • 相关阅读:
    【分享】64K视频合集
    【原译】四种方法统计字符串的行数&执行时间比较
    【原译】自动省略功能的WPF文本框控件
    【笔记】MD5加密
    【原译】在amazon kindle上安装Metasploit
    【笔记】wubi安装ubuntu遇到的问题
    【笔记】贪心算法找零钱(C#实现)
    ubuntu下在java代码中调用c代码
    sql截取字段最后以特定字符隔开的内容语句
    mysql中删除字符串或字段中空格函数
  • 原文地址:https://www.cnblogs.com/hushaojun/p/4435712.html
Copyright © 2020-2023  润新知