QFormBuilder 类
QFormBuilder 类用于在运行时动态地从 UI 文件构建用户界面。更多...
头文件 | #include <QFormBuilder> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Designer) target_link_libraries(mytarget PRIVATE Qt6::Designer) |
qmake | QT += designer |
继承 | QAbstractFormBuilder |
公共函数
QFormBuilder() | |
虚拟 | ~QFormBuilder() override |
void | addPluginPath(const QString &pluginPath) |
void | clearPluginPaths() |
QList<QDesignerCustomWidgetInterface *> | customWidgets() const |
QStringList | pluginPaths() const |
void | setPluginPath(const QStringList &pluginPaths) |
详细描述
QFormBuilder 类提供了一个机制,可以在运行时根据使用 Qt Designer 创建的 UI 文件动态地创建用户界面。例如
MyForm::MyForm(QWidget *parent) : QWidget(parent) { QFormBuilder builder; QFile file(":/forms/myWidget.ui"); file.open(QFile::ReadOnly); QWidget *myWidget = builder.load(&file, this); file.close(); auto *layout = new QVBoxLayout(this); layout->addWidget(myWidget); }
通过将用户界面包含在示例的资源中(myForm.qrc
),我们可以确保在运行示例时用户界面将存在。
<!DOCTYPE RCC><RCC version="1.0"> <qresource prefix="/forms"> <file>mywidget.ui</file> </qresource> </RCC>
QFormBuilder 通过一些用于支持自定义小部件插件的函数扩展了 QAbstractFormBuilder 基类。
- pluginPaths() 返回表单构建器在加载自定义小部件插件时搜索的路径列表。
- addPluginPath() 允许将额外的路径注册到表单构建器。
- setPluginPath() 用于用从其他来源获得的路由列表替换现有路径列表。
- clearPluginPaths() 从表单构建器中删除所有已注册的路径。
- customWidgets() 返回一个包含可用于创建已注册自定义小部件的新实例的插件的接口列表。
QFormBuilder 类通常用于自定义组件和应用软件,这些组件和应用软件包含 Qt Designer。需要动态在运行时生成用户界面的独立应用程序使用在 QtUiTools 模块中找到的 QUiLoader 类。
另请参阅:QAbstractFormBuilder 和 Qt UI Tools。
成员函数文档
QFormBuilder::QFormBuilder()
构建新的表单构建器。
[覆盖虚函数非抛出异常]
QFormBuilder::~QFormBuilder()
销毁表单构建器。
void QFormBuilder::addPluginPath(const QString &pluginPath)
将指定的 pluginPath 新插件路径添加到表单构建器在加载自定义小部件插件时搜索的路径列表中。
另请参阅setPluginPath() 和 clearPluginPaths().
void QFormBuilder::clearPluginPaths()
清除表单构建器用于搜索自定义小部件插件的路径列表。
另请参阅pluginPaths().
QList<QDesignerCustomWidgetInterface *> QFormBuilder::customWidgets() const
返回可供使用的插件列表。
QStringList QFormBuilder::pluginPaths() const
返回表单构建器搜索插件的路径列表。
另请参阅addPluginPath().
void QFormBuilder::setPluginPath(const QStringList &pluginPaths)
将插件路径列表设置为指定的 pluginPaths 列表。
另请参阅addPluginPath().
© 2024 The Qt Company Ltd. 所 Contributed 文档的版权为各自的拥有者所有。本提供的文档是根据由自由软件基金会发布的 GNU 自由文档许可 1.3 版本 的条款许可的。Qt 和相应的徽标是芬兰的 The Qt Company Ltd. 和/或在其他国家的商标。所有其他商标均为各自所有者的财产。