QDesignerWidgetBoxInterface 类

The QDesignerWidgetBoxInterface class allows you to control the contents of Qt Designer's widget box. More...

报头 #include <QDesignerWidgetBoxInterface>
CMakefind_package(Qt6 REQUIRED COMPONENTS Designer)
target_link_libraries(mytarget PRIVATE Qt6::Designer)
qmakeQT += designer
继承 QWidget

公共函数

QDesignerWidgetBoxInterface(QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags())
virtual~QDesignerWidgetBoxInterface()
virtual QStringfileName() const = 0
virtual boolload() = 0
virtual boolsave() = 0
virtual voidsetFileName(const QString &fileName) = 0

详细描述

QDesignerWidgetBoxInterface 包含一套通常用于操作 Qt 设计器工具箱内容的函数。

Qt Designer 使用一个 XML 文件来填充其工具箱。该文件的名称是工具箱的一个属性,您可以使用 fileName() 函数获取它。

QDesignerWidgetBoxInterface 还提供了 save() 函数,将工具箱的内容保存到由工具箱的文件名属性指定的文件中。如果在未调用 save() 函数的情况下对工具箱进行了更改,例如将小部件拖放到工具箱中,则可以通过简单调用 load() 函数来恢复原始内容

        auto *widgetBox = formEditor->widgetBox();

        widgetBox->load();

不推荐直接实例化 QDesignerWidgetBoxInterface 类。您可以使用 QDesignerFormEditorInterface::widgetBox() 函数获取 Qt Designer 工具箱的接口。在实现自定义小部件插件时,您必须子类化 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 和窗口 flags 构造一个组件箱界面。

[虚拟 noexcept] QDesignerWidgetBoxInterface::~QDesignerWidgetBoxInterface()

销毁组件箱界面。

[纯虚] QString QDesignerWidgetBoxInterface::fileName() const

返回当前 Qt Designer 使用以填充其组件箱的XML文件名称。

另请参阅setFileName().

[纯虚] bool QDesignerWidgetBoxInterface::load()

通过加载(或重新加载)当前指定的XML文件来填充 Qt Designer 的组件箱。如果文件成功加载则返回true;否则返回false。

另请参阅setFileName().

[纯虚] bool QDesignerWidgetBoxInterface::save()

Qt Designer 的组件箱内容保存到由 fileName() 函数指定的文件中。如果内容成功保存则返回true;否则返回false。

另请参阅fileName() 和 setFileName().

[纯虚] void QDesignerWidgetBoxInterface::setFileName(const QString &fileName)

设置 Qt Designer 将用于填充其组件箱的XML文件为 fileName。您必须调用 load() 以通过新的XML文件更新组件箱。

另请参阅fileName() 和 load().

© 2024 Qt公司。本文档的贡献包括各自所有者的版权。本文档根据自由软件基金会发布的 GNU自由文档许可证版本1.3 的条款进行许可。Qt及其相应的标志是芬兰和/或其他地区的Qt公司的商标。所有其他商标均为其各自所有者的财产。