PyQt5 + Qt Designer配置指令

Ubuntu + PyCharm + Qt Designer 全套配置指令

一、安装依赖

更新软件源

sudo apt update

安装 Qt5、Qt Designer、PyQt5 工具

sudo apt install qt5-default qttools5-dev-tools qtcreator pyqt5-dev-tools -y

确认安装成功

qtdesigner --version

pyuic5 --version

pyrcc5 --version

Qt Designer 可执行文件路径:

/usr/bin/designer


二、PyCharm 配置 External Tools

进入 File → Settings → Tools → External Tools,分别添加以下三个工具。

1. Qt Designer

·

Name: Qt Designer

·

·

Program: /usr/bin/designer

·

·

Arguments: FileNameFileNameFileName

·

·

Working directory: FileDirFileDirFileDir

·


2. PyUIC5(UI 转 Python)

·

Name: PyUIC5

·

·

Program: pyuic5

·

·

Arguments:

·

-o FileNameWithoutExtensionFileNameWithoutExtensionFileNameWithoutExtension_ui.py FileNameFileNameFileName

·

·

Working directory: FileDirFileDirFileDir

·

(这样 mainwindow.ui → mainwindow_ui.py)


3. Pyrcc5(资源文件 QRC 转 Python)

Name: Pyrcc5

Program: pyrcc5

Arguments:

-o FileNameWithoutExtensionFileNameWithoutExtensionFileNameWithoutExtension_rc.py FileNameFileNameFileName

Working directory: FileDirFileDirFileDir

(这样 resources.qrc → resources_rc.py)


三、项目使用流程

在 PyCharm 里新建 .ui 文件,用 External Tools → Qt Designer 打开设计界面。

设计好界面后,右键 .ui 文件 → External Tools → PyUIC5,生成 xxx_ui.py。

如果有 .qrc 资源文件,右键 .qrc → External Tools → Pyrcc5,生成 xxx_rc.py。

在 Python 脚本中调用生成的类,例如:

import sys

from PyQt5.QtWidgets import QApplication, QMainWindow

from mainwindow_ui import Ui_MainWindow # UI 文件生成的类

class MyWindow(QMainWindow, Ui_MainWindow):

def init(self):

super().init()

self.setupUi(self)

self.pushButton.clicked.connect(self.say_hello)

def say_hello(self):

self.label.setText("Hello, PyQt5!")

if name == "main":

app = QApplication(sys.argv)

window = MyWindow()

window.show()

sys.exit(app.exec_())


四、验证运行

python3 main.py

如果窗口能弹出,并且点击按钮能响应,说明环境配置完成 ✅。


相关推荐
专注仿真1 小时前
线性回归和逻辑回归算法详解
开发语言·人工智能·python·大模型训练·控制算法
jimy11 小时前
C++ 中的 `T&&`:右值引用与转发引用
开发语言·c++
呆呆虫122 小时前
用 orjson 加速 SerpBase 响应解析:基准对比与注意事项
开发语言·php
心疼你的一切2 小时前
Python自动发邮件实战定时发报表
大数据·开发语言·python
Wang's Blog3 小时前
Java 项目实战:交友项目 - 用户体系集成总结
java·开发语言·交友
中科三方4 小时前
IPv6检测常见问题:AAAA记录检测不通过是什么原因?
开发语言·php
沫璃染墨4 小时前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html
刚入门的大一新生5 小时前
Linux-线程互斥
java·开发语言
香芋芋圆5 小时前
iD-editor 详解|OSM官方在线编辑器,基于D3.js的轻量地图编辑器
开发语言·javascript·编辑器
蓝祁子yoky5 小时前
Qt学习日记 Day13:网络编程(一)-TCP基础与Socket实战
网络·qt·学习