Spec-Zone.ru › Qt 5.14

Класс QDesignerWidgetBoxInterface

Класс QDesignerWidgetBoxInterface позволяет управлять содержимым виджет-боксом Qt Designer. Подробнее...

Заголовок: #include <QDesignerWidgetBoxInterface>
qmake: QT += designer
Наследует: QWidget
  • Список всех членов, включая унаследованные

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

QDesignerWidgetBoxInterface(QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())
virtual ~QDesignerWidgetBoxInterface()
virtual QString fileName() const = 0
virtual bool load() = 0
virtual bool save() = 0
virtual void setFileName(const QString &fileName) = 0

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

QDesignerWidgetBoxInterface содержит набор функций, обычно используемых для манипулирования содержимым виджет-бокса Qt Designer.

Qt Designer использует XML-файл для заполнения своего виджет-бокса. Имя этого файла является одним из свойств виджет-бокса, и вы можете получить его, используя функцию fileName().

QDesignerWidgetBoxInterface также предоставляет функцию save(), которая сохраняет содержимое виджет-бокса в файле, указанном именем файла виджет-бокса. Если вы внесли изменения в виджет-бокс, например, поместив виджет в виджет-бокс, не вызвав функцию save(), исходное содержимое можно восстановить, просто вызвав функцию load():

        QDesignerWidgetBoxInterface *widgetBox = 0:
        widgetBox = formEditor->widgetBox();

        widgetBox->load();

Класс QDesignerWidgetBoxInterface не предназначен для непосредственного создания экземпляров. Вы можете получить интерфейс к виджет-боксу Qt Designer, используя функцию QDesignerFormEditorInterface::widgetBox(). Указатель на текущий объект QDesignerFormEditorInterface Qt Designer (formEditor в примере выше) предоставляется параметром функции QDesignerCustomWidgetInterface::initialize(). При реализации плагина пользовательского виджета вы должны унаследовать от QDesignerCustomWidgetInterface, чтобы предоставить свой плагин в Qt Designer.

Если вы хотите сохранить свои изменения, а также сохранить исходное содержимое, вы можете использовать функцию save() в сочетании с функцией setFileName(), чтобы сохранить свои изменения в другой файл. Сначала запомните имя исходного файла:

        QString originalFile = widgetBox->fileName();

        widgetBox->setFileName("myWidgetBox.xml");
        widgetBox->save();

Затем вы можете восстановить исходное содержимое виджет-бокса, сбросив имя файла на исходный файл и вызвав load():

        widgetBox->setFileName(originalFile);
        widgetBox->load();

Аналогичным образом, вы можете в дальнейшем использовать свой настраиваемый XML-файл:

        if (widgetBox->filename() != "myWidgetBox.xml") {
            widgetBox->setFileName("myWidgetBox.xml");
            widgetBox->load();
        }

См. также QDesignerFormEditorInterface.

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

QDesignerWidgetBoxInterface::QDesignerWidgetBoxInterface(QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())

Конструирует интерфейс виджет-бокса с заданным parent и указанными флагами окна.

[virtual] QDesignerWidgetBoxInterface::~QDesignerWidgetBoxInterface()

Уничтожает интерфейс виджет-бокса.

[pure virtual] QString QDesignerWidgetBoxInterface::fileName() const

Возвращает имя XML-файла, который в настоящее время используется Qt Designer для заполнения своего виджет-бокса.

См. также setFileName().

[pure virtual] bool QDesignerWidgetBoxInterface::load()

Заполняет виджет-бокс Qt Designer, загружая (или перезагружая) указанный в настоящее время XML-файл. Возвращает true, если файл успешно загружен; в противном случае false.

См. также setFileName().

[pure virtual] bool QDesignerWidgetBoxInterface::save()

Сохраняет содержимое виджет-бокса Qt Designer в файле, указанном функцией fileName(). Возвращает true, если содержимое успешно сохранено; в противном случае false.

См. также fileName() и setFileName().

[pure virtual] void QDesignerWidgetBoxInterface::setFileName(const QString &fileName)

Устанавливает XML-файл, который Qt Designer будет использовать для заполнения своего виджет-бокса, на fileName. Вы должны вызвать load(), чтобы обновить виджет-бокс с помощью нового XML-файла.

См. также fileName() и load().

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

Spec-Zone.ru

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