Spec-Zone.ru › Qt

Класс QFormBuilder

Класс QFormBuilder используется для динамического построения пользовательских интерфейсов из файлов пользовательского интерфейса во время выполнения. Подробнее...

Заголовок: #include <QFormBuilder>
CMake: find_package(Qt6 COMPONENTS Designer REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Designer)
qmake: QT += designer
Наследует: QAbstractFormBuilder
  • Список всех членов, включая унаследованные

Открытые функции

QFormBuilder()
virtual ~QFormBuilder() override
void addPluginPath(const QString &pluginPath)
void clearPluginPaths()
QList<QDesignerCustomWidgetInterface *> customWidgets() const
QStringList pluginPaths() const
void setPluginPath(const QStringList &pluginPaths)

Подробное описание

Класс QFormBuilder предоставляет механизм для динамического создания пользовательских интерфейсов во время выполнения, основанный на файлах пользовательского интерфейса, созданных с помощью Qt Designer. Например:

        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();

            QVBoxLayout *layout = new QVBoxLayout;
            layout->addWidget(myWidget);
            setLayout(layout);
        }

Включив пользовательский интерфейс в ресурсы примера (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. Самостоятельные приложения, которым требуется динамически генерировать пользовательские интерфейсы во время выполнения, используют класс QUiLoader, находящийся в модуле QtUiTools.

См. также QAbstractFormBuilder и Инструменты Qt UI.

Документация по функциям-членам

QFormBuilder::QFormBuilder()

Конструирует новый строитель форм.

[override virtual] 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().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qformbuilder.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API