配置的前提是已经安装了Python以及PyQt5,如何安装可以参考《Windows PyQt5安装说明》,这边不做赘述,记住安装目录在哪,下面将会用到该目录。

1、配置入口

打开Pycharm,选择File->Settings
image-20220719094453390

2、配置Qt Designer

按下图配置Qt Designer的路径和工作目录

在这里插入图片描述

Name
可以随便取,但是最好取好识别的名字,这边直接叫QtDesigner。

Program
就是designer的路径。designer的路径就在python安装路径下,比如

D:\Program Files\Python39\Lib\site-packages\qt5_applications\Qt\bin\designer.exe

Working directory
即工作目录,这边使用$ProjectFileDir$,表示工程所在文件目录,可以点击右边的+号选择,也可以自己输入。

3、配置PyUIC工具

PyUIC可以将.ui文件转换为.py文件,供py文件调用,配置方法如下图:

Name
同样可以随便取,但是取一个有辨识度的名字就好,这边取PyUIC

Program
即pyuic5的文件路径,在python安装目录的Scripts里面,如:

D:\Program Files\Python39\Scripts\pyuic5.exe

有的版本不在这个目录,而是在
D:\Program Files\Python39\Lib\site-packages\qt5_applications\Qt\bin\
具体可以搜下这个文件

Arguments
转换参数,输入以下参数,表示指定输入输出文件的意思:

-o $FileNameWithoutExtension$.py $FileName$

Working directory
即工作目录,将转换完的文件存在哪里,这边选和ui文件一样的目录就行:

$FileDir$

4、测试

(1)新建一个Pycharm工程,选择工程目录后,其他默认就行。然后通过Pycharm菜单栏中的Tools->External Tools,选择配置好的QtDesigner,启动designer。

在这里插入图片描述

(2)在designer中新建一个Wdiget:

在这里插入图片描述

(3)通过在左侧边栏,选取拖拽方式拖到工作窗口,添加Lable、pushButton:

在这里插入图片描述

(4)然后保存到项目位置,保存为test.ui。

(5)切换到Pycharm,发现工程目录下就有了test.ui文件,右键该文件,并选择PyUIC进行转换,如下图:

在这里插入图片描述

执行成功后,就会发现生成了test.py文件,该文件即ui转换后的py文件

在这里插入图片描述

(6)调用该UI,在main.py(main.py就是创建工程时默认生成的文件)文件中删除原有代码,并输入以下代码进行调用:

import sys
from PyQt5.QtWidgets import QMainWindow, QApplication

import test

####################### 全局变量#########################
app = QApplication(sys.argv)
num = 0


class MyWindows(test.Ui_Form, QMainWindow):
    def __init__(self):
        super(MyWindows, self).__init__()
        self.setupUi(self)
        self.label.setText("click:{}".format(num))


my_windows = MyWindows()  # 实例化对象
my_windows.show()  # 显示窗口


####################### button click #########################
def button_click():
    global num
    num += 1
    my_windows.label.setText("click:{}".format(num))


my_windows.pushButton.clicked.connect(button_click)

sys.exit(app.exec_())

(7)右键执行main.py,如下图:

在这里插入图片描述

在这里插入图片描述

测试成功!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐