【问题标题】:WARNING: All changes made in this file will be lost警告:在此文件中所做的所有更改都将丢失
【发布时间】:2023-04-11 07:27:01
【问题描述】:

所以我有一个一般性问题。当您使用 pyuic 将 .ui 文件转换为 .py 文件时,在 .py 文件的顶部会显示:

警告!对此文件所做的所有更改都将丢失!

严重吗?对文件所做的更改将如何丢失?

很抱歉,我意识到这不是一个聪明的问题,但我只是想确定这是关于什么的,并且之后它不会包含任何内容!

【问题讨论】:

    标签: qt user-interface pyqt


    【解决方案1】:

    由于这是一个生成的文件,它是一个结果,而不是一个。因此:

    1. 当您分发您的项目时,您不应该分发该文件。因此,无论您对文件做什么,都不会影响到您的客户。

    2. 每当您的项目被构建并且源 .ui 文件发生更改时,都会重新生成输出 - 并且您对输出文件所做的任何更改都会丢失。

    【讨论】:

    • 非常感谢您的回答,现在清楚多了!好吧,既然我不打算再更改 .ui 文件,那应该没问题,如果我将 .py 和 .ui 文件都给其他人,它应该可以正常工作吗?
    • @guy16 你应该给其他人的是一个makefile,它采用.ui 和其他来源并生成安装程序或其他可交付成果。根本没有必要分发 .py 文件。当我下载你的产品时,我想写makecmake 并得到最终可以运行的东西(无论是用于调试的可执行文件,还是用于分发的安装程序)。
    【解决方案2】:

    这意味着:您已使用 .uic 文件生成 .py 文件,因此如果您手动修改后者(即:创建类或添加注释等...)并随后重新通过 puic 生成一个文件,这些文件将丢失。 这就是为什么您应该创建一个 main.py 文件并将生成的 .py 文件导入其中,保持原始文件不变。 例如,如果在稍后阶段您需要添加一个按钮和一个标签,您可以通过 qdesigner 执行此操作,它会为您提供新的 .uic 文件,您可以创建一个 .py 使用 puic 和瞧,您的 gui 被修改,您的旧 .py 被新的擦除,但 main.py 中的所有内容保持不变。 希望这是有道理的..

    【讨论】:

      【解决方案3】:

      如果您已从 .ui 文件生成 .py 文件并且不会对 .ui 文件进行任何更改,则更改将持续存在。

      【讨论】:

        猜你喜欢
        • 2015-08-31
        • 1970-01-01
        • 2014-03-01
        • 2011-01-07
        • 2011-06-17
        • 2014-05-21
        • 1970-01-01
        相关资源
        最近更新 更多