您的位置:

Python PyQt5界面开发实例

一、PyQt5介绍

PyQt5是一种创建图形界面的Python工具包,虽然其文档比其他Python GUI如wxPython略少,但其更为现代化,符合第三方Python库的标准。

PyQt5的许可证采用了GPLv3,于是它可以被安装在下载Python库的时候一并下载,这也意味着PyQt5可以被广泛地应用在不同领域的开发中。

对于初学者,PyQt5可以方便快捷地创建出很多应用程序,从简单的对话框、状态栏到复杂的主窗口等都可以轻松实现。

二、简单的PyQt5程序

下面是一个我们所以熟悉的Hello World程序的代码示例:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = QWidget()
    label = QLabel('Hello World!', window)
    window.setGeometry(0, 0, 200, 50)
    window.show()
    sys.exit(app.exec_())

三、使用QDialog创建对话框

对话框是处理用户响应的一个常见窗口,根据不同的输入类型不同类型的对话框可以包含资质输入、文件选择、选择器等等控件。

使用QDialog类建立对话框,QDialog继承自QtGui.QWidget类,因此它可以是一个具有标准窗口属性和方法的最小化窗口。

import sys
from PyQt5.QtWidgets import QApplication, QDialog, QPushButton

class Example(QDialog):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        btn = QPushButton('button', self)
        btn.move(20,20)
        btn.clicked.connect(self.close)
        
        self.setGeometry(300, 300, 100, 100)

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

四、使用QMessageBox创建消息对话框

QMessageBox是处理消息的对话框,它会根据不同的类型显示出不同的标识。

下面是一个使用QMessageBox创建消息对话框的代码示例:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QMessageBox

class Example(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Message box')
        self.show()

    def closeEvent(self, event):
        reply = QMessageBox.question(self, 'Message',
            "Are you sure to quit?", QMessageBox.Yes |
            QMessageBox.No, QMessageBox.No)
        if reply == QMessageBox.Yes:
            event.accept()
        else:
            event.ignore()


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

五、结语

本文简单介绍了PyQt5的基础知识并提供了一些简单的示例。PyQt5是一种适用于Python GUI界面开发的重要工具,使用它可以方便地实现对话框、消息框、窗口等常见图形界面元素。如果您希望更加深入地了解PyQt5的知识,请参考其官方文档。