使用 Qt 设计器创建 .ui 文件,然后使用 pyuic5 将其转换为 .py 格式,由于“::”语法,会产生充满语法错误的文件。 使用的命令:
pyuic5 -x MainMenu.ui -o MainMenu.py
MainMenu.py 的片段例如:
self.verticalLayout.setSizeConstraint(QtCore.Qt.QLayout::SizeConstraint::SetNoConstraint)
这显然不是 Python 语法(至少我不知道),看起来更像 C++。 错误消息(首先弹出的):
self.labelTitle.setTextFormat(QtCore.Qt.Qt::TextFormat::AutoText) ^ SyntaxError: invalid syntax
显然该文件将无法编译。将一些“::”更改为“.”消除了其中一些错误,但考虑到每次文件生成时都会出现这种情况,我想找到问题的根源。
如果有人遇到同样的问题,请确保不要只在 QtCreator 中打开 ui 文件。打开包含该文件的文件夹作为工作区,以便 QtCreator 可以将项目配置为 Qt 5.xx 项目。之后,pyuic5 应该按预期工作。