QDesignerWidgetBoxInterface Class

QDesignerWidgetBoxInterfaceクラスは、Qt Widgets Designerのウィジェットボックスの内容を制御することができます。詳細...

Header: #include <QDesignerWidgetBoxInterface>
CMake: find_package(Qt6 REQUIRED COMPONENTS Designer)
target_link_libraries(mytarget PRIVATE Qt6::Designer)
qmake: QT += designer
Inherits: 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 Widgets Designerのウィジェットボックスの内容を操作するために通常使用される関数のコレクションが含まれています。

Qt Widgets DesignerはXMLファイルを使用してウィジェット・ボックスを生成します。そのファイル名はウィジェット・ボックスのプロパティの1つで、fileName ()関数を使用して取得できます。

QDesignerWidgetBoxInterfaceには、ウィジェット・ボックスのファイル名プロパティで指定されたファイルにウィジェット・ボックスの内容を保存するsave ()関数も用意されています。save ()関数を呼び出さずにウィジェット・ボックスにウィジェットをドロップするなどしてウィジェット・ボックスに変更を加えた場合、load ()関数を呼び出すだけで元の内容を復元することができます:

        auto *widgetBox = formEditor->widgetBox();

        widgetBox->load();

QDesignerWidgetBoxInterfaceクラスは、直接インスタンス化することを意図していません。Qt Designerのウィジェットボックスへのインターフェイスは、QDesignerFormEditorInterface::widgetBox ()関数を使用して取得できます。Qt Widgets Designerの現在のQDesignerFormEditorInterface オブジェクト(上記の例ではformEditor )へのポインタは、QDesignerCustomWidgetInterface::initialize ()関数のパラメータで提供されます。カスタムウィジェットプラグインを実装する場合、QDesignerCustomWidgetInterface をサブクラス化し、Qt Widgets 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も参照のこと

メンバ関数ドキュメント

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

与えられたparent と指定されたウィンドウflags でウィジェットボックスインターフェースを構築する。

[virtual noexcept] QDesignerWidgetBoxInterface::~QDesignerWidgetBoxInterface()

ウィジェットボックスインターフェースを破棄します。

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

Qt Widgets Designer がウィジェット・ボックスに入力するために現在使用している XML ファイルの名前を返します。

setFileName()も参照してください

[pure virtual] bool QDesignerWidgetBoxInterface::load()

現在指定されている XML ファイルをロード(またはリロード)して、Qt Widgets Designer のウィジェットボックスに入力します。ファイルが正常に読み込まれた場合はtrueを返し、そうでない場合はfalseを返します。

setFileName()も参照してください

[pure virtual] bool QDesignerWidgetBoxInterface::save()

Qt Widgets Designer のウィジェット・ボックスの内容をfileName() 関数で指定したファイルに保存します。コンテンツが正常に保存された場合はtrueを返し、そうでない場合はfalseを返します。

fileName() およびsetFileName()も参照してください

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

Qt Widgets Designer がウィジェット・ボックスに入力する XML ファイルをfileName に設定します。新しい XML ファイルでウィジェット・ボックスを更新するには、load() を呼び出す必要があります。

fileName() およびload()も参照してください

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。