将 .py 转换为 .ui 文件 [重复]

Posted

技术标签:

【中文标题】将 .py 转换为 .ui 文件 [重复]【英文标题】:Converting .py to .ui file [duplicate] 【发布时间】:2021-10-06 01:44:03 【问题描述】:

我们已经知道我们可以使用 pyuic4 轻松地将 ui 转换为 py。

可以将 .py(仅包含 pyqt ui 相关内容)代码转换回 .ui。

【问题讨论】:

你为什么要这样做? 说来话长,但让我试着解释一下。我看到有人能够将 matplotlib 实现到 pyqt ui 中。画布已分配给 py 代码的 ui 部分内的 figurecanvas。我想知道这在 pyqt ui 中是什么样子的。从技术上讲,我们不能只使用 qt 设计器将 matlabplotlib 画布拖放到 pyqt 画布中,可以吗? 有可能——事实上,很容易——以各种不同的方式创建不映射到任何可能的 .ui 文件的 PyQt 代码。除非有人通过生成 .ui 文件并在其上运行 pyuic4 来创建 UI,否则您尝试做的事情甚至没有意义,更不可能。 【参考方案1】:

我可以举一个例子说明为什么会这样:当你继承了一个项目并且原始开发人员没有将 ui 文件放在存储库中时(只留下了由 pyuic4 生成的文件)。没错,这是一个非常特殊的例子,这也是我试图找到某些东西的原因(不是单个 ui 文件的问题)。

以一种更通用的方式,我可以想象如果磁盘发生故障,以前的开发人员会发生这种情况。

是的,我完全同意这样的工具不是像 pyuic4 那样提供的正常东西......

【讨论】:

如果我们想用额外的按钮/功能扩展现有的 .py 文件,那么将这些新功能包含在 .ui 文件而不是 .py 文件中会节省时间。所以我还是觉得有必要把.py转成.ui。如果我的问题很傻,如果还有其他更好的方法,请建议我。 我以前丢失过 .ui 文件...【参考方案2】:

Qt/PyQt 没有为此提供工具,而且 AFAIK 没有人编写过。

很难想象你为什么需要它。只需保留 .ui 文件,永远不要编辑生成的 .py 文件(甚至在运行时使用 uic 动态使用 .ui 文件),您永远不需要反向转换。

同时,如果您有一些随机 PyQt4 代码生成的 GUI 甚至不是由 pyuic4 创建的,则无法保证任何 .ui 都可能生成代码。 (事实上​​,您在网上找到的大多数 PyQt 示例都不会像 pyuic4 那样做事,而且很可能任何其他代码生成器也不会像 pyuic4 那样做事。)

【讨论】:

以上是关于将 .py 转换为 .ui 文件 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

将 .ui 转换为 py 文件 PyQt5 时出错

如何使用 PyQt5 和 python 3.6 将 .ui 文件转换为 .py 文件

在 Windows 机器中将 Qt Designer(.ui) 文件转换为 python(.py) 可执行文件

将pyqt ui文件转换成py文件

将 file.ui 转换为 file.py 时出错

使用pyqt5将QT的ui文件转化为py文件