PyQt5 简介
PyQt 是一套 Python 基于 Qt 应用框架的模块,Qt 是 1991 年由 Qt Company 开发的跨平台 C++ 图形用户界面 (GUI) 应用程序开发框架。PyQt 是由英国的 Riverbank Computing Limited 公司所开发 (https://riverbankcomputing.com) ,可用于 Python 2 和 3,是一个跨平台的工具包,它可以运行在所有主要的操作系统,包括 UNIX,Linux,Windows,Mac OS。PyQt 是双重许可,开发者可以在GPL和商业许可之间进行选择,以下主要以 PyQt5 为例。
PyQt5 安装
安装 PyQt5 与 PyQtChart,PyQtChart 是主要用来呈现数据可视化的包。安装完后记得检验是否安装成功,以及确认版本,以确保安装是否完成,结果如下图所示。
# 安装命令
pip3 install PyQt5 PyQtChart
# 检视命令
pip3 show PyQt5 PyQtChart
检验 PyQt5 与 PyQtChart 包的安装情形
PyQt5 基本范例
PyQt5 可以利用几行代码就能显示一个窗口,因为底层已经实现了窗口的基本功能,支持程序和面向对象编程风格,面向对象编程有三个重要的方面:类、变量和方法。以下实例就是以面向对象风格来进行编程,创建一个新的类为 Examle ,Example 继承 PyQt5 模块内建的 QWidget 类,此类已实现窗口的基本变量与方法。在建构函数中调用自定义的 initUI() 方法,该方法完成以下任务:
- 设置标签文字。
- 设置窗口的位置和大小。
- 设置窗口的标题.
- 设置窗口的图标。
- 显示窗口
而在主程式中,因为每一 PyQt5 应用程序必须创建一个应用程序对象,传入参数为 sys.argv,这参数是一个列表,从命令行输入参数。接著创建自建的图形应用对象 Example,当关闭窗口后会调用 sys.exit() 方法,确保应用程序干净的退出。
# -*- coding: utf-8 -*-
import sys
from PyQt5.QtWidgets import (QWidget, QLabel, QApplication)
from PyQt5.QtGui import QIcon
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI() #界面绘制交给InitUi方法
def initUI(self):
#设置标签文字
lbl1 = QLabel('Label Example', self)
#设置窗口的位置和大小
self.setGeometry(300, 300, 300, 220)
#设置窗口的标题
self.setWindowTitle('PtQt5 Window Example')
#设置窗口的图标
self.setWindowIcon(QIcon('python.png'))
#显示窗口
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
PyQt5 基本图形范例