如何使用PySide将.ui文件加载到python类中



我已经使用PyQt很长一段时间了,在使用它的整个过程中,都有一个非常一致的编程模式。

  1. 使用Qt设计器创建一个.ui文件
  2. 创建一个与您在.ui文件中创建的小部件类型相同的python类
  3. 初始化python类时,使用uic将.ui文件动态加载到类中

在PySide有什么类似的方法吗?我已经通读了文档和示例,我能找到的最接近的是一个计算器示例,它将.ui文件预先呈现为python代码,这是PyQt中的一种非常古老的方法(当你可以解析ui时,为什么要将其烘焙为python?)

我正在用PySide做这件事。:)

你用这个https://gist.github.com/cpbotha/1b42a20c8f3eb9bb7cb8(Sebastian Wiesner原创https://github.com/lunaryorn/snippets/blob/master/qt4/designer/pyside_dynamic.py但是已经消失)-它覆盖PySide.QtUiTools.QUiLoader,并提供一个新的loadUi()方法,以便您可以执行此操作:

class MyMainWindow(QMainWindow):
    def __init__(self, parent=None):
        QMainWindow.__init__(self, parent)
        loadUi('mainwindow.ui', self)

当您实例化MyMainWindow时,它将具有您使用Qt设计器设计的UI。

如果您还需要使用自定义小部件(Qt Designer中的"Promote to"),请参阅以下答案:https://stackoverflow.com/a/14877624/532513

相关内容

  • 没有找到相关文章

最新更新