解决pyside-uic编译QBottonGroup的报错:unexpected error in pyside-uic

本文介绍了一个使用pysideuic编译包含QBottonGroup的QTdesigner UI文件时遇到的错误,并提供了解决方案,即通过修改pysideuic/uiparser.py文件中的一行代码来修复该问题。
最近在用pyside写个界面。为了图方便,就用pysideuic将QTdesigner的ui文件进行编译。奇怪的事情发生了,包含QBottonGroup的ui文件在编译的时候发生


unexpected error occurred的问题。

google之,解决方法及其简单:

修改文件pysideuic/uiparser.py,第212行, "bg_name = bg_i18n.string" 更改为 "bg_name = bg_i18n"

为何这么改~~~木知啊~~~

### 配置 PySide6 相关工具以在 PyCharm 中使用 #### 1. 配置 External Tools 在 PyCharm 中,可以通过配置 `External Tools` 来集成 PySide6 的相关工具,如 `pyside6-designer`、`pyside6-uic` 和 `pyside6-rcc`。以下是具体配置方法: #### 2. 配置 PySide6-Designer - **名称(Name)**: 设置为 `Designer`。 - **程序(Program)**: 指定 PySide6 的 `designer.exe` 路径,例如 `D:\anaconda3\envs\py39\Scripts\pyside6-designer.exe`[^3]。 - **参数(Arguments)**: 可留空。 - **工作目录(Working directory)**: 设置为 `$ProjectFileDir$` 或 `$FileDir$`[^4]。 完成配置后,可以通过 `Tools -> External Tools -> Designer` 启动 PySide6-Designer。 #### 3. 配置 PySide6-UIC - **名称(Name)**: 设置为 `UIC`。 - **程序(Program)**: 指定 `pyside6-uic.exe` 的路径,例如 `E:\PY312\sadb.venv\Scripts\pyside6-uic.exe`[^2]。 - **参数(Arguments)**: 使用 `$FilePath$ -o $FileNameWithoutExtension$.py`[^2]。 - **工作目录(Working directory)**: 设置为 `$FileDir$`[^2]。 配置完成后,右键点击 `.ui` 文件并选择 `Tools -> UIC`,即可将 `.ui` 文件转换为 Python 代码[^2]。 #### 4. 配置 PySide6-RCC - **名称(Name)**: 设置为 `RCC`。 - **程序(Program)**: 指定 `pyside6-rcc.exe` 的路径,例如 `H:\anaconda\envs\app\Scripts\pyside6-rcc`。 - **参数(Arguments)**: 使用 `$FilePath$ -o $FileNameWithoutExtension$_rc.py`。 - **工作目录(Working directory)**: 设置为 `$FileDir$`。 配置完成后,右键点击资源文件(如 `.qrc`),选择 `Tools -> RCC` 即可生成对应的资源模块。 #### 5. 示例代码:加载 UI 和资源文件 以下是一个完整的示例,展示如何加载通过 PySide6-Designer 创建的 UI 文件和资源文件: ```python from PySide6.QtWidgets import QApplication, QMainWindow import sys import resources_rc # 导入通过 pyside6-rcc 生成的资源文件 class MainWindow(QMainWindow): def __init__(self): super(MainWindow, self).__init__() from ui_mainwindow import Ui_MainWindow # 导入通过 pyside6-uic 生成的 UI 文件 self.ui = Ui_MainWindow() self.ui.setupUi(self) if __name__ == "__main__": app = QApplication(sys.argv) window = MainWindow() window.show() sys.exit(app.exec()) ``` ### 注意事项 - 确保已正确安装 PySide6,并且环境变量中包含 PySide6 的 `Scripts` 目录[^1]。 - 在配置 `External Tools` 时,确保路径正确无误,特别是 Python 环境的路径[^3]。 - 如果需要频繁使用这些工具,可以考虑创建快捷键以提高效率[^4]。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值