为演示,我们使用 Qt Widgets 动画缓和范例。
						应用程序的组成由一源文件,
						
easing.py
						
						,UI 文件
						
form.ui
						
						,资源文件
						
easing.qrc
						
						和工程文件,
						
easing.pyproject
						
						文件按 YAML 格式:
					
{
    "files": ["easing.qrc", "ui_form.py", "easing.py", "easing_rc.py",
              "form.ui"]
}
					
					要将 UI 文件转换成 Python 代码,构建表单使用 uic (用户界面编译器) :
uic -g python form.ui > ui_form.py
						由于顶层 Widget 名为
						
表单
						
						,这产生的 Python 类名为
						
Ui_Form
						
						被生成。它提供函数
						
setupUi()
						
						,将 Widget 作为参数,调用它以创建 UI 元素:
					
from ui_form import Ui_Form ... class Window(QtWidgets.QWidget): def __init__(self, parent=None): super(Window, self).__init__(parent) self.m_ui = Ui_Form() self.m_ui.setupUi(self)
						稍后,可以访问 Widget 凭借
						
Ui_Form
						
						类:
					
self.m_ui.graphicsView.setScene(self.m_scene)
						除了
						
setupUi()
						
						,
						
Ui_Form
						
						提供另一方法
						
retranslateUi()
						
						,可以被调用以反应
						
							QEvent
						
						类型
						
							QEvent
						
						.LanguageChange,指示应用程序语言的改变。
						
					
The QUiLoader 类提供表单加载器对象以在运行时构造用户界面。此用户界面可以检索自任何 QIODevice ,如 QFile 对象。 QUiLoader::load () 函数使用文件中包含的用户界面描述构造表单 Widget。
通过 uiloader 范例来演示它:
from PySide2.QtUiTools import QUiLoader if __name__ == '__main__': # Some code to obtain the form file name, ui_file_name app = QApplication(sys.argv) ui_file = QFile(ui_file_name) if not ui_file.open(QIODevice.ReadOnly): print("Cannot open {}: {}".format(ui_file_name, ui_file.errorString())) sys.exit(-1) loader = QUiLoader() widget = loader.load(ui_file, None) ui_file.close() if not widget: print(loader.errorString()) sys.exit(-1) widget.show() sys.exit(app.exec_())在 C++ 应用程序使用 Designer UI 文件 使用自定义 Widget 采用 Qt Designer