Sur cette page

QDesignerWidgetBoxInterface Class

La classe `QDesignerWidgetBoxInterface` vous permet de contrôler le contenu de la boîte de widgets d'Qt Widgets Designer. En savoir plus...

En-tête : #include <QDesignerWidgetBoxInterface>
CMake : find_package(Qt6 REQUIRED COMPONENTS Designer)
target_link_libraries(mytarget PRIVATE Qt6::Designer)
qmake : QT += designer
Hérite de : QWidget

Fonctions publiques

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

Description détaillée

QDesignerWidgetBoxInterface contient un ensemble de fonctions généralement utilisées pour manipuler le contenu de la boîte à widgets d'Qt Widgets Designer.

Qt Widgets Designer utilise un fichier XML pour remplir sa boîte à widgets. Le nom de ce fichier est l'une des propriétés de la boîte à widgets, et vous pouvez le récupérer à l'aide de la fonction fileName().

QDesignerWidgetBoxInterface fournit également la fonction save() qui enregistre le contenu de la boîte à widgets dans le fichier spécifié par la propriété « nom de fichier » de la boîte à widgets. Si vous avez apporté des modifications à la boîte de widgets, par exemple en y déposant un widget, sans appeler la fonction ` save()`, le contenu d’origine peut être restauré par un simple appel à la fonction ` load()` :

        auto *widgetBox = formEditor->widgetBox();

        widgetBox->load();

Qt Widgets La classe `QDesignerWidgetBoxInterface` n’est pas destinée à être instanciée directement. Vous pouvez récupérer une interface vers la boîte à widgets de Qt Designer à l’aide de la fonction QDesignerFormEditorInterface::widgetBox(). Un pointeur vers l’objet QDesignerFormEditorInterface actuel de Designer (formEditor dans l’exemple ci-dessus) est fourni par le paramètre de la fonction QDesignerCustomWidgetInterface::initialize(). Lors de l’implémentation d’un plugin de widget personnalisé, vous devez créer une sous-classe de QDesignerCustomWidgetInterface afin d’exposer votre plugin à Qt Widgets Designer.

Si vous souhaitez enregistrer vos modifications tout en conservant le contenu d’origine, vous pouvez utiliser la fonction ` save()` combinée à la fonction ` setFileName()` pour enregistrer vos modifications dans un autre fichier. N’oubliez pas de stocker au préalable le nom du fichier d’origine :

        QString originalFile = widgetBox->fileName();

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

Vous pouvez ensuite restaurer le contenu d’origine de la boîte de widget en réinitialisant le nom du fichier sur celui du fichier d’origine et en appelant load() :

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

De la même manière, vous pourrez par la suite utiliser votre fichier XML personnalisé :

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

Voir également QDesignerFormEditorInterface.

Documentation sur les fonctions membres

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

Crée une interface de boîte de widgets avec l'parent on fournie et la fenêtre spécifiée flags.

[override virtual noexcept] QDesignerWidgetBoxInterface::~QDesignerWidgetBoxInterface()

Supprime l'interface de la boîte de widgets.

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

Renvoie le nom du fichier XML que Qt Widgets Designer utilise actuellement pour remplir sa boîte de widgets.

Voir également setFileName().

[pure virtual] bool QDesignerWidgetBoxInterface::load()

Remplit la boîte à widgets d'Qt Widgets Designer en chargeant (ou en rechargeant) le fichier XML actuellement spécifié. Renvoie « true » si le fichier est chargé avec succès ; sinon, « false ».

Voir également setFileName().

[pure virtual] bool QDesignerWidgetBoxInterface::save()

Enregistre le contenu de la boîte à widgets d'Qt Widgets Designer dans le fichier spécifié par la fonction fileName(). Renvoie « true » si le contenu a été enregistré avec succès ; sinon, « false ».

Voir également fileName() et setFileName().

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

Définit le fichier XML que Qt Widgets Designer utilisera pour remplir sa boîte de widgets : fileName. Vous devez appeler la méthode load() pour mettre à jour la boîte de widgets avec le nouveau fichier XML.

Voir également fileName() et load().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.