Skip to main content
 首页 » 编程设计

python之如何从 pyuic .py 文件重建 .ui 文件

2024年08月26日38落叶无声

前段时间我用 PyQt 做了一个项目。我创建了一些 .ui 文件并使用 pyuic4 生成了相应的 .py 文件。我想重新开始工作,但我丢失了 .ui 文件(我格式化了我的 PC 并进行了备份,但 .ui 文件位于 Qt 设计器文件夹中并且丢失了)。

有什么方法可以从生成的 .py 文件中恢复那些 .ui 文件?

请您参考如下方法:

可以使用 QFormBuilder 来做到这一点:

from PyQt4 import QtCore, QtGui, QtDesigner 
from myui import Ui_Dialog 
 
def dump_ui(widget, path): 
    builder = QtDesigner.QFormBuilder() 
    stream = QtCore.QFile(path) 
    stream.open(QtCore.QIODevice.WriteOnly) 
    builder.save(stream, widget) 
    stream.close() 
 
app = QtGui.QApplication(['']) 
 
dialog = QtGui.QDialog() 
Ui_Dialog().setupUi(dialog) 
 
dialog.show() 
     
dump_ui(dialog, 'myui.ui') 

(注意:为了获得最佳结果,显示窗口似乎非常重要)。

不过,不要指望完美重建您的原始 ui 文件。您几乎肯定需要做很多整理才能获得可以接受的东西 - 但如果您的 UI 非常复杂,它仍然值得。