在 PySide 中加载 QtDesigner 的 .ui 文件

新手上路,请多包涵

我正在寻找一个简单的示例,说明如何将 QtDesigner 生成的 .ui 文件直接加载到 Python 应用程序中。

我只是想避免使用 pyuic4。

原文由 denysonique 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 661
2 个回答

PySide 与 PyQt 不同,它实现了 QUiLoader 类以直接读取 .ui 文件。从链接的文档中,

 loader = QUiLoader()
file = QFile(":/forms/myform.ui")
file.open(QFile.ReadOnly)
myWidget = loader.load(file, self)
file.close()

原文由 Stephen Terry 发布,翻译遵循 CC BY-SA 3.0 许可协议

对于 PySide 和 .ui 文件中的完整新手,这里有一个完整的示例:

 from PySide import QtCore, QtGui, QtUiTools

def loadUiWidget(uifilename, parent=None):
    loader = QtUiTools.QUiLoader()
    uifile = QtCore.QFile(uifilename)
    uifile.open(QtCore.QFile.ReadOnly)
    ui = loader.load(uifile, parent)
    uifile.close()
    return ui

if __name__ == "__main__":
    import sys
    app = QtGui.QApplication(sys.argv)
    MainWindow = loadUiWidget(":/forms/myform.ui")
    MainWindow.show()
    sys.exit(app.exec_())

原文由 BarryPye 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题