【代码世界 No.5】Python学习笔记 #3 - QT使用之Pyqt在PyCharm中的配置
界面化编程可以增加程序的交互性, 是Python进阶学习应用中是很值得尝试的一项内容。其中Pyqt 是一个可以和 Qt界面设计软件配合使用的库,功能比较综合完善。
写在前面
Qt 本身是一款独立的程序,基于C/C++语言来开发和使用的,pyqt则是Python中的一个三方库,具备Qt 接口,能够结合Qt高效的可视化界面设计与Python的后台逻辑优势,提高界面程序的开发效率和效果。
如果是单独Qt程序进行界面设计,需要首先去Qt官网下载该应用程序,然后打开QT Creator来创建一个界面项目,再通过Qt designer来进行设计,并存为一个后缀为.ui的文件;然后还需要Python下载pyqt库,利用其中的 pyuic 和 pyrcc组件来将 .ui文件和资源文件(图片等)转换成为后缀为.py的python文件进行使用。
这种方式的好处是可以自动为按钮等组件生成槽函数,并在python的后台文件中直接调用,而且用命令行或者.bat文件处理也能够实现,不必须使用Pycharm。但缺点也是显而易见,就是需要单独下载Qt程序,配置过程也相对繁琐一些,对于一直使用Pycharm的人员而言,将其集中在Pycharm一个IDE工具中会更加方便。由于个人一直用的后一种方式,所以本篇主要介绍pyqt在Pycham中的配置和基本使用。
环境:Window或Mac , Pycharm Community, Python3.8

安装Python、Pycharm、pyqt
不论是Win系统或Mac系统,首先在官网下载Python3 (Win需要配置好环境变量),或者下载anaconda等集成软件来搭建环境;然后下载安装Pycharm Community, 并选择一个解释器或虚拟环境(此处不过多介绍了)。
完成之后安装 pyqt库,pyqt目前已经到 pyqt6 版本了,建议安装pyqt5之后版本,自带Qt designer 和 Pyuic 和Pyrcc。
配置Pyqt组件
在Pycharm中,打开Setting对话框(快捷键Ctrl + Alt + S), 选择其中的 Tools 中的 External Tool, 即添加外部工具,添加3个组件;

1、Qt designer
Qt designer的配置主要就三个地方需要填,
第一个是Name,就是显示的名称,建议填Qt designer就好。
第二个是Tool Settings下方的 Program, 这里是designer可执行程序的路径地址,一般在虚拟环境中Qt\bin目录下 名为designer的程序,如果环境是用Conda的,那么Conda地址下也会存在这个组件,建议用Everything或Mac聚焦搜索一下位置,然后添加即可。
第三个是Working directory, 这里表示该程序工作地址,可以填 $ProjectFileDir$ 或者$FileDir$,表示默认路径在工程路径下还是ui文件的路径下。

2、PyUIC
PyUIC 是将.ui程序转换为.py程序的工具,配置方式如下:
Name 和 Working directory与上述一致,Program中找到pyuic可执行程序的路径(pyqt5中在win系统下是pyuic5.exe)。
另外还有一个Arguments , 填入$FileName$ -o $FileNameWithoutExtension$.py,其含义就是将保存的ui文件转换为一个相同文件名,但后缀为.py的文件。

3、PyRcc配置
PyRcc 是将Qt资源文件程序转换的工具,配置方式与PyUic相似

使用
当配置好之后,在项目文件中右击,会看到菜单栏中出现了刚刚配置的三个外部工具。

点击Qt designer就会打开Qt设计窗口界面,在其中新建或者打开ui设计文件,在上面拖放控件及布局,设计期望的界面形式。

设计完成之后保存在项目下,会生成一个XXX.ui文件,直接打开可以看到其实是一个xml格式的文件。

为了转换为Py格式文件,右击该ui文件,在菜单栏中选择外部工具PyUIC, 便会在相同目录下(或者项目目录下,取决于配置参数&FileDir 还是&ProjectFileDir)生成一个同名的py文件,该文件的内容可以看到是将窗体代码转换为了Python写成的窗体类,其中的各个控件和布局都是这个类下面的属性或方法。



如果上述配置和使用能够成功的话,说明已经基本完成了PyQt在Pycharm上的配置了。有了窗体界面后,接下来的工作便是编写相关控件的槽函数,实现逻辑功能。后续会继续更新补充。
本文主要是在学习和使用中的记录和心得,供自己查阅也分享给一同学习的朋友,如有不恰当或错误之处,欢迎留言交流,谢谢~