PyQt 简介及实践
PyQt 是一个用于创建GUI应用程序的跨平台的工具包,它将Python编程语言和Qt库成功融合在一起,QT库目前是最强大的GUI库之一。
PyQt可以运行在所有主流操作系统上,包括UNIX,Linux,Windows和Mac OS 。
自Qt移植Python 上形成PyQt以来,已更新出PyQt3, PyQt4, PyQt5,PyQt提供GPL版和商业版。(当前案例采用GPL版本)
Step1. 安装Qt 开发工具 参考Link
sudo apt-get install qt5-default qtcreator -y
sudo apt-get install qt5-doc qt5-doc-html qtbase5-doc-html qtbase5-examples -y
PS: qt5-doc/examples 可以不安装
设置QT集成编译环境:
- Tools->Options->Build & Run->Compilers
add gcc
path: /usr/bin/gcc
ABI: custom – arm – linux – generic – elf – 64 bit- Tools->Options->Build & Run->Kit
Add, and change the name “JetsonTX2”.
Step2. 安装PyQt and SIP
SIP 无PyPI Packages,需下载源码编译安装download src link
$python3 configure.py
$make
$sudo make install
PyQt 安装
方法一、apt-get 安装,需采用源码安装
sudo apt-get install pyqt5*
方法二、源码编译安装下载链接
$python configure.py --qmake /usr/lib/aarch64-linux-gnu/qt5/bin/qmake
$make
$sudo make install
安装PyInstaller 需指定版本:(3.4版本无法安装)
pip3 install PyInstaller==3.3.1 --user
Step3. 编写PyQt Demo软件
- QtCreator 画图(Ctrl+R 预览) --- demo.ui
- 将HelloWorld.ui转换为HelloWorld.py
pyuic5 -o HelloWorld.py HelloWorld.ui
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'helloworld.ui'
#
# Created by: PyQt5 UI code generator 5.5.1
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 300)
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(120, 90, 99, 27))
self.pushButton.setObjectName("pushButton")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.pushButton.setText(_translate("Form", "hello"))
- 添加main.py(主文件),调用HelloWorld.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import HelloWorld
from PyQt5.QtWidgets import QApplication,QMainWindow
if __name__ == '__main__':
app = QApplication(sys.argv)
MainWindow = QMainWindow()
ui = HelloWorld.Ui_Form()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
- pyinstaller main.py,当前目录会生成dist folder.Running manual
Step4.
安装、配置、使用pycharm 编译器
wget pycharm
$tar zxf pycharm-community-2018.3.4.tar.gz
$export DISPLAY=:0 (若是终端 SSH链接TX2)
$./bin/pycharm.sh
创建工程并选择对应Python版本和工程路径
pycharm.create.proj.png
Step5. 参考案例
1、基于QTdesigner的PyQt编程
2、Python3 :PyCharm + Qt designer 学习 + 实例