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

Posted

技术标签:

【中文标题】将 .py 转换为 .ui 文件 [重复]【英文标题】:Converting .py to .ui file [duplicate] 【发布时间】:2013-04-04 22:23:52 【问题描述】:

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

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

【问题讨论】:

你为什么要这样做? 说来话长,但让我试着解释一下。我看到有人能够在 pyqt ui 中实现 matplotlib。画布已分配给 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文件