📜  在按钮单击 pyqt5 上打开文件对话框 - Python (1)

📅  最后修改于: 2023-12-03 15:37:42.565000             🧑  作者: Mango

在按钮单击 Pyqt5 上打开文件对话框 - Python

本文将介绍如何在 Pyqt5 应用程序中,在按钮单击时打开文件对话框,以便用户选择或打开文件。本教程适用于 Python 3.x 版本。

环境设置

首先,我们需要安装 Pyqt5 库。使用以下命令安装:

pip install pyqt5
创建应用程序

创建一个名为 Main.py 的 Python 文件,并使用以下代码创建 Pyqt5 应用程序:

import sys
from PyQt5.QtWidgets import QApplication, QWidget

if __name__ == '__main__':
    app = QApplication(sys.argv)

    window = QWidget()
    window.setWindowTitle('File Dialog')
    window.show()

    sys.exit(app.exec_())

以上代码创建了一个名为 File Dialog 的窗口,并在应用程序中显示。

创建按钮

接下来,我们需要在窗口中创建一个按钮,以便用户单击时打开文件对话框。在窗口中添加以下代码:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QFileDialog

class FileDialog(QWidget):

    def __init__(self):
        super().__init__()

        self.title = 'File Dialog'
        self.left = 200
        self.top = 200
        self.width = 400
        self.height = 300

        self.initUI()

    def initUI(self):
        self.setWindowTitle(self.title)
        self.setGeometry(self.left, self.top, self.width, self.height)

        # 创建按钮
        button = QPushButton('Open File', self)
        button.move(150, 150)
        button.clicked.connect(self.showDialog)

    def showDialog(self):
        fname = QFileDialog.getOpenFileName(self, 'Open file', './')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = FileDialog()
    ex.show()
    sys.exit(app.exec_())

在以上代码中,我们创建了一个名为 FileDialog 的类,并添加了一个 initUI 方法,用于创建窗口和按钮。按钮调用 showDialog 方法,该方法调用 QFileDialog.getOpenFileName 方法打开文件对话框,以便在用户单击按钮时显示。

运行应用程序

使用以下命令运行应用程序:

python Main.py 

程序将启动,并在窗口中显示 Open File 按钮。单击按钮将打开文件对话框,以便用户选择或打开文件。

总结

本教程介绍了如何在 Pyqt5 应用程序中,在按钮单击时打开文件对话框。我们通过创建一个按钮和一个名为 showDialog 的方法实现了该功能。