前段时间我使用PyQt创建了一个项目。我创建了一些.ui文件并使用pyuic4生成相应的.py文件。我想再次开始工作,但我丢失了.ui文件(我格式化了我的PC并进行了备份,但.ui文件驻留在Qt设计器文件夹中并丢失了。)
有什么办法可以从生成的.py文件中恢复那些.ui文件?
答案 0 :(得分:3)
可以使用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非常复杂,它应该仍然值得。