Auf dieser Seite

DialogButtonBox QML Type

Eine Schaltflächenleiste, die in Dialogfeldern verwendet wird. Mehr...

Import Statement: import QtQuick.Controls
Inherits:

Container

Eigenschaften

Zugehörige Eigenschaften

Signale

Methoden

Ausführliche Beschreibung

Dialogfelder und Meldungsfelder zeigen Schaltflächen in der Regel in einer Reihenfolge an, die den Benutzeroberflächenrichtlinien der jeweiligen Plattform entspricht. Die Reihenfolge der Schaltflächen in Dialogfeldern ist auf verschiedenen Plattformen stets unterschiedlich. Mit „DialogButtonBox“ kann ein Entwickler Schaltflächen hinzufügen, wobei automatisch die für die Plattform des Benutzers geeignete Reihenfolge verwendet wird.

Die meisten Schaltflächen in einem Dialogfeld erfüllen bestimmte Funktionen. Dazu gehören:

  • Das Bestätigen oder Ablehnen des Dialogs.
  • Hilfe anfordern.
  • Ausführen von Aktionen im Dialog selbst (z. B. Felder zurücksetzen oder Änderungen übernehmen).

Es kann auch alternative Möglichkeiten geben, den Dialog zu schließen, die jedoch zu unerwünschten Ergebnissen führen können.

Die meisten Dialoge verfügen über Schaltflächen, die fast schon als Standard angesehen werden können (z. B. die Schaltflächen „ OK “ und „ Cancel “). Manchmal ist es praktisch, diese Schaltflächen auf standardisierte Weise zu erstellen.

Es gibt mehrere Möglichkeiten, „DialogButtonBox“ zu verwenden. Eine Möglichkeit besteht darin, die Standardschaltflächen anzugeben (z. B. „ OK “, „ Cancel “ und „ Save “) und die Schaltflächenbox die Schaltflächen einrichten zu lassen.

Dialogfeld mit den Schaltflächen „OK“ und „Abbrechen“

DialogButtonBox {
    standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel

    onAccepted: console.log("Ok clicked")
    onRejected: console.log("Cancel clicked")
}

Alternativ können Schaltflächen und ihre Funktionen manuell festgelegt werden:

DialogButtonBox {
    Button {
        text: qsTr("Save")
        DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole
    }
    Button {
        text: qsTr("Close")
        DialogButtonBox.buttonRole: DialogButtonBox.DestructiveRole
    }
}

Sie können auch normale Schaltflächen und Standardschaltflächen beliebig kombinieren.

Wenn in der Schaltflächenbox auf eine Schaltfläche geklickt wird, wird das Signal „ clicked()“ für die tatsächlich gedrückte Schaltfläche ausgegeben. Darüber hinaus werden die folgenden Signale automatisch ausgegeben, wenn eine Schaltfläche mit den entsprechenden Rollen gedrückt wird:

RolleSignal
AcceptRole, YesRoleaccepted()
ApplyRoleapplied()
DiscardRolediscarded()
HelpRolehelpRequested()
RejectRole, NoRolerejected()
ResetRolereset()

Siehe auch Dialog.

Dokumentation zu den Eigenschaften

alignment : flags

Diese Eigenschaft legt die Ausrichtung der Schaltflächen fest.

Mögliche Werte:

KonstantBeschreibung
Qt.AlignLeftDie Schaltflächen sind linksbündig ausgerichtet.
Qt.AlignHCenterDie Schaltflächen sind horizontal zentriert.
Qt.AlignRightDie Schaltflächen sind rechtsbündig ausgerichtet.
Qt.AlignTopDie Schaltflächen sind oben ausgerichtet.
Qt.AlignVCenterDie Schaltflächen sind vertikal zentriert.
Qt.AlignBottomDie Schaltflächen sind unten ausgerichtet.

Standardmäßig ist keine bestimmte Ausrichtung festgelegt; beim Auslesen der Ausrichtungseigenschaft wird ein Standard-Flag-Wert zurückgegeben, der dem Wert 0 entspricht. Die Eigenschaft kann auf diesen Wert zurückgesetzt werden, indem ihr „ undefined “ zugewiesen wird. In diesem Fall wird die Größe der Schaltflächen so angepasst, dass sie den verfügbaren Platz ausfüllen.

Hinweis: Diese Eigenschaft geht von einer horizontalen Anordnung der Schaltflächen aus. Beachten Sie, dass bei Verwendung des iOS-Stils der „ DialogButtonBox “ eine vertikale Anordnung verwendet, wenn diese Eigenschaft auf einen anderen Wert als „ undefined “ gesetzt ist und mehr als zwei Schaltflächen vorhanden sind. In allen anderen Fällen werden die Schaltflächen horizontal angeordnet.

buttonLayout : enumeration [since QtQuick.Controls 2.5 (Qt 5.12)]

Diese Eigenschaft enthält die Richtlinie für das Anordnungsschema der Schaltflächen, die beim Anordnen der in der Schaltflächenbox enthaltenen Schaltflächen verwendet werden soll. Der Standardwert ist plattformabhängig.

Mögliche Werte:

KonstanteBeschreibung
DialogButtonBox.WinLayoutVerwenden Sie eine Richtlinie, die für Anwendungen unter Windows geeignet ist.
DialogButtonBox.MacLayoutVerwende eine Richtlinie, die für Anwendungen unter macOS geeignet ist.
DialogButtonBox.KdeLayoutVerwenden Sie eine Richtlinie, die für Anwendungen unter KDE geeignet ist.
DialogButtonBox.GnomeLayoutVerwenden Sie eine Richtlinie, die für Anwendungen unter GNOME geeignet ist.
DialogButtonBox.AndroidLayoutVerwenden Sie eine Richtlinie, die für Anwendungen unter Android geeignet ist.

Diese Eigenschaft wurde in QtQuick.Controls 2.5 (Qt 5.12) eingeführt.

defaultButton : AbstractButton [since 6.11]

Diese Eigenschaft enthält die Standardschaltfläche.

Die Standardschaltfläche wird auf „ highlighted “ gesetzt und erhält den Fokus.

Es kann nur eine Schaltfläche in der Schaltflächenbox als Standard festgelegt werden. Diese Eigenschaft kann nicht zusammen mit der Eigenschaft „ defaultStandardButton “ verwendet werden.

Diese Eigenschaft wurde in Qt 6.11 eingeführt.

Siehe auch „ standardButtons “ und „ defaultStandardButton “.

defaultStandardButton : enumeration [since 6.11]

Diese Eigenschaft enthält die Standardschaltfläche.

Die Standardschaltfläche wird „ highlighted “ sein und den Fokus erhalten.

Es kann nur eine Schaltfläche in der Schaltflächenbox als Standard festgelegt werden. Diese Eigenschaft kann nicht zusammen mit der Eigenschaft „ defaultButton “ verwendet werden.

Diese Eigenschaft wurde in Qt 6.11 eingeführt.

Siehe auch „ standardButtons “ und „ defaultButton “.

delegate : Component

Diese Eigenschaft enthält einen Delegaten zum Erstellen von Standardschaltflächen.

DialogButtonBox Übernimmt nicht die Eigentümerschaft des Delegaten.

Siehe auch standardButtons.

position : enumeration

Diese Eigenschaft legt die Position der Schaltflächenbox fest.

Hinweis: Wenn die Schaltflächenbox als Kopf- oder Fußzeile von „ ApplicationWindow “ oder „Page“ zugewiesen ist, wird die entsprechende Position automatisch festgelegt.

Mögliche Werte:

KonstanteBeschreibung
DialogButtonBox.HeaderDie Schaltflächenbox befindet sich oben als Kopfzeile eines Fensters oder einer Seite.
DialogButtonBox.FooterDie Schaltflächenbox befindet sich unten als Fenster- oder Seitenfußzeile.

Der Standardwert lautet „ Footer “.

Siehe auch „ Dialog::header “ und „ Dialog::footer “.

standardButtons : enumeration

Diese Eigenschaft enthält eine Kombination aus Standardschaltflächen, die von der Schaltflächenleiste verwendet werden.

DialogButtonBox {
    standardButtons: DialogButtonBox.Ok | DialogButtonBox.Cancel

    onAccepted: console.log("Ok clicked")
    onRejected: console.log("Cancel clicked")
}

Die Schaltflächen werden in der für die Plattform des Benutzers geeigneten Reihenfolge angeordnet.

Mögliche Flags:

KonstanteBeschreibung
DialogButtonBox.OkEine „OK“-Schaltfläche, die mit „ AcceptRole “ definiert wurde.
DialogButtonBox.OpenEine „Öffnen“-Schaltfläche, die mit dem Befehl „ AcceptRole “ definiert wurde.
DialogButtonBox.SaveEine „Speichern“-Schaltfläche, die mit der Funktion „ AcceptRole “ definiert wurde.
DialogButtonBox.CancelEine Schaltfläche „Abbrechen“, definiert mit der Funktion „ RejectRole “.
DialogButtonBox.CloseEine Schaltfläche „Schließen“, definiert mit dem RejectRole.
DialogButtonBox.DiscardEine Schaltfläche „Verwerfen“ oder „Nicht speichern“ (je nach Plattform), definiert mit dem DestructiveRole.
DialogButtonBox.ApplyEine Schaltfläche „Übernehmen“, definiert mit dem ApplyRole.
DialogButtonBox.ResetEine Schaltfläche „Zurücksetzen“, definiert mit dem ResetRole.
DialogButtonBox.RestoreDefaultsEine Schaltfläche „Standardeinstellungen wiederherstellen“, definiert mit dem Befehl ` ResetRole`.
DialogButtonBox.HelpEine Schaltfläche „Hilfe“, definiert mit dem „ HelpRole “.
DialogButtonBox.SaveAllEine Schaltfläche „Alle speichern“, definiert mit dem „ AcceptRole “.
DialogButtonBox.YesEine Schaltfläche „Ja“, definiert mit dem „ YesRole “.
DialogButtonBox.YesToAllEine Schaltfläche „Ja für alle“, definiert mit dem YesRole.
DialogButtonBox.NoEine Schaltfläche „Nein“, definiert mit dem „ NoRole “.
DialogButtonBox.NoToAllEine Schaltfläche „Nein zu allen“, definiert mit dem Attribut „ NoRole “.
DialogButtonBox.AbortEine Schaltfläche „Abbrechen“, die mit dem „ RejectRole “ definiert ist.
DialogButtonBox.RetryEine Schaltfläche „Erneut versuchen“, definiert mit dem AcceptRole.
DialogButtonBox.IgnoreEine Schaltfläche „Ignorieren“, definiert mit der Funktion ` AcceptRole`.
DialogButtonBox.NoButtonEine ungültige Schaltfläche.

Siehe auch „ standardButton()“.

Dokumentation zu angehängten Eigenschaften

DialogButtonBox.buttonBox : DialogButtonBox [read-only attached]

Diese zugehörige Eigenschaft enthält die Schaltflächenbox, die diese Schaltfläche verwaltet, oder „ null “, falls sich die Schaltfläche nicht in einer Schaltflächenbox befindet.

DialogButtonBox.buttonRole : enumeration [attached]

Diese zugeordnete Eigenschaft legt die Rolle der einzelnen Schaltflächen in einer Schaltflächenbox fest.

DialogButtonBox {
    Button {
        text: qsTr("Save")
        DialogButtonBox.buttonRole: DialogButtonBox.AcceptRole
    }
    Button {
        text: qsTr("Close")
        DialogButtonBox.buttonRole: DialogButtonBox.DestructiveRole
    }
}

Mögliche Werte:

KonstanteBeschreibung
DialogButtonBox.InvalidRoleDie Schaltfläche ist ungültig.
DialogButtonBox.AcceptRoleEin Klick auf die Schaltfläche führt zur Bestätigung des Dialogs (z. B. OK).
DialogButtonBox.RejectRoleEin Klick auf die Schaltfläche führt dazu, dass der Dialog abgelehnt wird (z. B. Cancel).
DialogButtonBox.DestructiveRoleEin Klick auf die Schaltfläche führt zu einer destruktiven Änderung (z. B. zum Verwerfen von Änderungen) und schließt den Dialog.
DialogButtonBox.ActionRoleEin Klick auf die Schaltfläche bewirkt Änderungen an den Elementen innerhalb des Dialogfelds.
DialogButtonBox.HelpRoleDurch Klicken auf die Schaltfläche kann Hilfe angefordert werden.
DialogButtonBox.YesRoleDie Schaltfläche ist eine „Ja“-ähnliche Schaltfläche.
DialogButtonBox.NoRoleDie Schaltfläche ist eine „Nein“-ähnliche Schaltfläche.
DialogButtonBox.ResetRoleDie Schaltfläche setzt die Felder des Dialogs auf die Standardwerte zurück.
DialogButtonBox.ApplyRoleDie Schaltfläche übernimmt die aktuellen Änderungen.

Signal-Dokumentation

accepted()

Dieses Signal wird ausgelöst, wenn auf eine Schaltfläche geklickt wird, die mit „ AcceptRole “ oder „ YesRole “ definiert wurde.

Hinweis: Der entsprechende Handler ist onAccepted.

Siehe auch rejected(), clicked() und helpRequested().

[since QtQuick.Controls 2.3 (Qt 5.10)] applied()

Dieses Signal wird ausgelöst, wenn auf eine Schaltfläche geklickt wird, die mit dem ApplyRole definiert wurde.

Hinweis: Der entsprechende Handler ist „ onApplied “.

Dieses Signal wurde in QtQuick.Controls 2.3 (Qt 5.10) eingeführt.

Siehe auch „ discarded()“ und „ reset()“.

clicked(AbstractButton button)

Dieses Signal wird ausgelöst, wenn auf einen „ button “ innerhalb der Schaltflächenbox geklickt wird.

Hinweis: Der entsprechende Handler ist ` onClicked`.

Siehe auch „ accepted()“, „ rejected()“ und „ helpRequested()“.

[since QtQuick.Controls 2.3 (Qt 5.10)] discarded()

Dieses Signal wird ausgelöst, wenn auf eine Schaltfläche geklickt wird, die mit dem „ DiscardRole “ definiert wurde.

Hinweis: Der entsprechende Handler ist „ onDiscarded “.

Dieses Signal wurde in QtQuick.Controls 2.3 (Qt 5.10) eingeführt.

Siehe auch „ reset()“ und „ applied()“.

helpRequested()

Dieses Signal wird ausgelöst, wenn auf eine Schaltfläche geklickt wird, die mit dem „ HelpRole “ definiert wurde.

Hinweis: Der entsprechende Handler ist ` onHelpRequested`.

Siehe auch „ accepted()“, „ rejected()“ und „ clicked()“.

rejected()

Dieses Signal wird ausgelöst, wenn auf eine Schaltfläche geklickt wird, die mit „ RejectRole “ oder „ NoRole “ definiert wurde.

Hinweis: Der entsprechende Handler lautet „ onRejected “.

Siehe auch accepted(), helpRequested() und clicked().

[since QtQuick.Controls 2.3 (Qt 5.10)] reset()

Dieses Signal wird ausgelöst, wenn auf eine Schaltfläche geklickt wird, die mit dem „ ResetRole “ definiert wurde.

Hinweis: Der entsprechende Handler ist „ onReset “.

Dieses Signal wurde in QtQuick.Controls 2.3 (Qt 5.10) eingeführt.

Siehe auch „ discarded()“ und „ applied()“.

Methodendokumentation

AbstractButton standardButton(StandardButton button)

Gibt den angegebenen Standard button zurück oder null, falls dieser nicht existiert.

Siehe auch standardButtons.

© 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.