有时候人只需要一只温暖的手的触摸,就像是拥有了整个世界。
命令行界面虽然可以运行代码完成功能,但是相对来说图形化界面更好友好,花点小时间看看PyQT5的教程了解一下还是很有用处的。
下载安装
注意PyQt5默认只支持Python3。
下载使用pip即可
pip install PyQt5
pip install PyQt5-tools
对于可视化需要一大堆的按钮啊,窗口啊之类的,如果每个窗口都要用代码去写指定在哪个地方就很麻烦,这个时候QtDesigner的用处就体现出来了,提供一个画图功能有点像Delphi,让你把按钮窗口之类的都画上去,然后自动生成python的代码。
如果是用pycharm开发的话,需要在Settings–>Project–>Project Interpreter加号中–>选择pyqt5和pyqt5 tools 点击安装
然后继续配置Settings -> Tools -> External Tools,点击左上角的绿色加号,Name填入QtDesigner(方便后续使用,名称无所谓)。Program选择我们安装的PyQt5-tools下面的designer.exe。Working directory则选择我们的工作目录。然后点击OK,则添加了QtDesigner作为PyCharm的外置工具。
然后添加PyUIC(UI转换工具),PyUIC的Program为Python.exe,在Python的安装目录下面的Scripts目录下,Working directory同理设为我们的工作目录,Arguments则填入如下代码:
-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
最后添加pyrcc用于PyQt5的资源文件转码。具体配置与上述内容相同,Arguments填入:
$FileName$ -o $FileNameWithoutExtension$_rc.py
点击apply,再pycharm中即可看到拓展的工具
画界面
点击Designer即可进入画图页面
这个时候可以根据需要加入按钮,选择栏之类的,关于desginer这一块的英文功能按钮,以后慢慢做笔记详解。
分别是按钮,表单的控件,中间是你画出来的可视化界面,右边的是你的控件详细属性。
生成代码
当你把可视化界面画完后,保存会生成一个xxx.ui文件,这个时候你在pycharm操作中要注意,鼠标点中刚刚生成的xxx.ui,然后点击PyUIC即可将你画好的界面编程代码。
调用界面
运行这个转换好的Python文件是无法显示任何窗口的。因为这个Python文件只有定义主窗口以及其控件的代码,并没有程序入口的代码。为了秉持视图与逻辑分离的原则,我们再编写一个新的脚本来调用这个文件,并且创建一个窗口。
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow
import sys
xxxx
生成的可视化界面代码
xxx
class MyWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MyWindow, self).__init__(parent)
self.setupUi(self)
if __name__ == '__main__':
app = QApplication(sys.argv)
myWin = MyWindow()
myWin.show()
sys.exit(app.exec_())
打包成exe
打包时要添加-–paths来指定PyQt5的路径
举个例子:
pyinstaller -F -w --paths=C:\Users\Lenovo\AppData\Local\Programs\Python\Python36\Lib\site-packages\PyQt5\Qt\bin --paths=C:\Users\Lenovo\AppData\Local\Programs\Python\Python36\Lib\site-packages\PyQt5\Qt\plugins main.py