PySide6/PyQt6 Qt Designer代码生成失败:unrecognized arguments: -g(Python3.12.1)
Qt Designer导出Python代码时“unrecognized arguments: -g”错误解决方法
错误原因
你遇到的unrecognized arguments: -g错误,是因为新版本的pyside6-uic/pyuic6工具已经移除了-g参数,而Qt Designer的导出配置里还保留了这个过时的参数。
解决方法
方法1:手动调用UIC工具转换
找到你的.ui文件路径,打开命令行执行对应命令:
- 针对PySide6:
pyside6-uic your_ui_file.ui -o output_ui_code.py - 针对PyQt6:
pyuic6 your_ui_file.ui -o output_ui_code.py
替换your_ui_file.ui为你的实际UI文件名,output_ui_code.py为你想要生成的Python代码文件名。
方法2:修正Qt Designer的导出配置
- 打开Qt Designer,点击顶部菜单栏的编辑 -> 偏好设置
- 在弹出的窗口中选择外部工具标签
- 找到列表中对应PySide6或PyQt6的导出工具(比如“PySide6 UI to Python”)
- 点击编辑,检查命令行参数,删除其中的
-g选项,保存配置后重新尝试导出
方法3:直接加载.ui文件(无需导出代码)
如果不想生成Python代码,可以直接在项目中加载.ui文件运行,这种方式更灵活,适合UI频繁修改的场景:
- PySide6示例代码:
from PySide6.QtWidgets import QApplication from PySide6.QtUiTools import QUiLoader import sys app = QApplication(sys.argv) loader = QUiLoader() window = loader.load("your_ui_file.ui") window.show() sys.exit(app.exec()) - PyQt6示例代码:
from PyQt6.QtWidgets import QApplication, QWidget from PyQt6.uic import loadUi import sys app = QApplication(sys.argv) window = QWidget() loadUi("your_ui_file.ui", window) window.show() sys.exit(app.exec())
内容的提问来源于stack exchange,提问作者Civil.Shakeri
相关产品推荐
相关产品推荐

