Auf dieser Seite

QAction Class

Die Klasse „QAction“ bietet eine Abstraktion für Benutzerbefehle, die verschiedenen Komponenten der Benutzeroberfläche hinzugefügt werden können. Mehr...

Header: #include <QAction>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Seit: Qt 6.0
Erbt von: QObject
Vererbt an:

QWidgetAction

Öffentliche Typen

enum ActionEvent { Trigger, Hover }
enum MenuRole { NoRole, TextHeuristicRole, ApplicationSpecificRole, AboutQtRole, AboutRole, …, QuitRole }
enum Priority { LowPriority, NormalPriority, HighPriority }

Eigenschaften

Öffentliche Funktionen

QAction(QObject *parent = nullptr)
QAction(const QString &text, QObject *parent = nullptr)
QAction(const QIcon &icon, const QString &text, QObject *parent = nullptr)
virtual ~QAction()
QActionGroup *actionGroup() const
void activate(QAction::ActionEvent event)
(since 6.0) QList<QObject *> associatedObjects() const
bool autoRepeat() const
QVariant data() const
QFont font() const
QIcon icon() const
QString iconText() const
bool isCheckable() const
bool isChecked() const
bool isEnabled() const
bool isIconVisibleInMenu() const
bool isSeparator() const
bool isShortcutVisibleInContextMenu() const
bool isVisible() const
QMenu *menu() const
QAction::MenuRole menuRole() const
QAction::Priority priority() const
void setActionGroup(QActionGroup *group)
void setAutoRepeat(bool)
void setCheckable(bool)
void setData(const QVariant &data)
void setFont(const QFont &font)
void setIcon(const QIcon &icon)
void setIconText(const QString &text)
void setIconVisibleInMenu(bool visible)
void setMenu(QMenu *menu)
void setMenuRole(QAction::MenuRole menuRole)
void setPriority(QAction::Priority priority)
void setSeparator(bool b)
void setShortcut(const QKeySequence &shortcut)
void setShortcutContext(Qt::ShortcutContext context)
void setShortcutVisibleInContextMenu(bool show)
void setShortcuts(QKeySequence::StandardKey key)
void setShortcuts(const QList<QKeySequence> &shortcuts)
void setStatusTip(const QString &statusTip)
void setText(const QString &text)
void setToolTip(const QString &tip)
void setWhatsThis(const QString &what)
QKeySequence shortcut() const
Qt::ShortcutContext shortcutContext() const
QList<QKeySequence> shortcuts() const
bool showStatusText(QObject *object = nullptr)
QString statusTip() const
QString text() const
QString toolTip() const
QString whatsThis() const

Öffentliche Slots

void hover()
void resetEnabled()
void setChecked(bool)
void setDisabled(bool b)
void setEnabled(bool)
void setVisible(bool)
void toggle()
void trigger()

Signale

void changed()
void checkableChanged(bool checkable)
void enabledChanged(bool enabled)
void hovered()
void toggled(bool checked)
void triggered(bool checked = false)
void visibleChanged()

Neu implementierte geschützte Funktionen

virtual bool event(QEvent *e) override

Ausführliche Beschreibung

In Anwendungen können viele gängige Befehle über Menüs, Symbolleisten-Schaltflächen und Tastaturkürzel aufgerufen werden. Da der Benutzer erwartet, dass jeder Befehl unabhängig von der verwendeten Benutzeroberfläche auf die gleiche Weise ausgeführt wird, ist es sinnvoll, jeden Befehl als Aktion darzustellen.

Aktionen können Benutzeroberflächenelementen wie Menüs und Symbolleisten hinzugefügt werden und sorgen automatisch für die Synchronisation der Benutzeroberfläche. Wenn der Benutzer beispielsweise in einem Textverarbeitungsprogramm die Schaltfläche „Fett“ in der Symbolleiste drückt, wird der Menüpunkt „Fett“ automatisch aktiviert.

Eine `QAction` kann ein Symbol, einen beschreibenden Text, einen Symboltext, eine Tastenkombination, einen Statustext, einen „Was ist das?“-Text und einen Tooltip enthalten. Alle Eigenschaften können unabhängig voneinander mit ` setIcon()`, ` setText()`, ` setIconText()`, ` setShortcut()`, ` setStatusTip()`, ` setWhatsThis()` und ` setToolTip()` festgelegt werden. Das Symbol und der Text, die beiden wichtigsten Eigenschaften, können ebenfalls im Konstruktor festgelegt werden. Mit ` setFont()` lässt sich eine individuelle Schriftart festlegen, die z. B. von Menüs berücksichtigt wird, wenn die Aktion als Menüpunkt angezeigt wird.

Wir empfehlen, Aktionen als untergeordnete Elemente des Fensters zu erstellen, in dem sie verwendet werden. In den meisten Fällen sind Aktionen untergeordnete Elemente des Hauptfensters der Anwendung.

QAction in Widget-Anwendungen

Sobald eine QAction erstellt wurde, sollte sie dem entsprechenden Menü und der Symbolleiste hinzugefügt und anschließend mit dem Slot verbunden werden, der die Aktion ausführt.

Aktionen werden mithilfe von ` QWidget::addAction()` oder ` QGraphicsWidget::addAction()` zu Widgets hinzugefügt. Beachten Sie, dass eine Aktion einem Widget hinzugefügt werden muss, bevor sie verwendet werden kann. Dies gilt auch, wenn die Tastenkombination global sein soll (d. h. ` Qt::ApplicationShortcut ` als ` Qt::ShortcutContext`).

Aktionen können als eigenständige Objekte erstellt werden. Sie können jedoch auch beim Aufbau von Menüs erstellt werden. Die Klasse ` QMenu ` enthält Hilfsfunktionen zum Erstellen von Aktionen, die sich für die Verwendung als Menüelemente eignen.

Siehe auch „ QMenu “ und „ QToolBar “.

Dokumentation zu Mitgliedstypen

enum QAction::ActionEvent

Dieser Enum-Typ wird beim Aufruf von ` QAction::activate()` verwendet

KonstanteWertBeschreibung
QAction::Trigger0Dies führt dazu, dass das Signal „ QAction::triggered()“ ausgesendet wird.
QAction::Hover1Dies führt dazu, dass das Signal „ QAction::hovered()“ ausgesendet wird.

Diese Enumeration beschreibt, wie eine Aktion in das Anwendungsmenü unter macOS verschoben werden soll.

KonstanteWertBeschreibung
QAction::NoRole0Diese Aktion sollte nicht in das Anwendungsmenü aufgenommen werden
QAction::TextHeuristicRole1Diese Aktion sollte basierend auf dem Aktionstext, wie in der Dokumentation unter „ QMenuBar “ beschrieben, in das Anwendungsmenü aufgenommen werden.
QAction::ApplicationSpecificRole2Diese Aktion sollte mit einer anwendungsspezifischen Rolle in das Anwendungsmenü aufgenommen werden
QAction::AboutQtRole3Diese Aktion bedient den Menüpunkt „Über Qt“.
QAction::AboutRole4Diese Aktion sollte an der Stelle platziert werden, an der sich der Menüpunkt „Über“ im Anwendungsmenü befindet. Der Text des Menüpunkts wird auf „Über <ANWENDUNGSNAME>“ gesetzt. Der Anwendungsname wird aus der Datei „ Info.plist “ im Anwendungsbundle abgerufen (siehe Qt für macOS – Bereitstellung).
QAction::PreferencesRole5Diese Aktion sollte an der Stelle im Anwendungsmenü platziert werden, an der sich der Menüpunkt „Einstellungen…“ befindet.
QAction::QuitRole6Diese Aktion sollte an der Stelle platziert werden, an der sich der Menüpunkt „Beenden“ im Anwendungsmenü befindet.

Die Einstellung dieses Werts wirkt sich nur auf Einträge aus, die sich in den direkten Menüs der Menüleiste befinden, nicht auf die Untermenüs dieser Menüs. Wenn Sie beispielsweise ein Menü „Datei“ in Ihrer Menüleiste haben und dieses Menü ein Untermenü enthält, hat die Einstellung von „MenuRole“ für die Aktionen in diesem Untermenü keine Auswirkung. Sie werden niemals verschoben.

enum QAction::Priority

Diese Enumeration definiert Prioritäten für Aktionen in der Benutzeroberfläche.

KonstanteWertBeschreibung
QAction::LowPriority0Die Aktion sollte in der Benutzeroberfläche nicht priorisiert werden.
QAction::NormalPriority128 
QAction::HighPriority256Die Aktion sollte in der Benutzeroberfläche priorisiert werden.

Siehe auch priority.

Eigenschaftsdokumentation

autoRepeat : bool

Diese Eigenschaft gibt an, ob die Aktion automatisch wiederholt werden kann

Wenn „true“, wird die Aktion automatisch wiederholt, solange die Tastenkombination gedrückt gehalten wird, vorausgesetzt, die automatische Tastenwiederholung ist im System aktiviert. Der Standardwert ist „true“.

Zugriffsfunktionen:

bool autoRepeat() const
void setAutoRepeat(bool)

Benachrichtigungssignal:

void changed()

checkable : bool

Diese Eigenschaft gilt unabhängig davon, ob es sich bei der Aktion um eine schaltbare Aktion handelt

Eine umschaltbare Aktion ist eine Aktion, die einen Ein-/Aus-Zustand hat. In einem Textverarbeitungsprogramm kann beispielsweise die Schaltfläche „Fett“ in der Symbolleiste entweder aktiviert oder deaktiviert sein. Eine Aktion, die keine umschaltbare Aktion ist, ist eine Befehlsaktion; eine Befehlsaktion wird einfach ausgeführt, z. B. „Datei speichern“. Standardmäßig ist diese Eigenschaft auf „ false “ gesetzt.

In manchen Situationen sollte der Zustand einer Umschaltaktion vom Zustand anderer Aktionen abhängen. Beispielsweise schließen sich die Umschaltaktionen „Linksbündig“, „Zentriert“ und „Rechtsbündig“ gegenseitig aus. Um ein exklusives Umschalten zu erreichen, fügen Sie die entsprechenden Umschaltaktionen einer „ QActionGroup “ hinzu, wobei die Eigenschaft „QActionGroup::exclusive“ auf „true“ gesetzt ist.

Zugriffsfunktionen:

bool isCheckable() const
void setCheckable(bool)

Notifier-Signal:

void checkableChanged(bool checkable)

Siehe auch „ setChecked()“.

checked : bool

Diese Eigenschaft gibt an, ob die Aktion markiert ist.

Nur markierbare Aktionen können markiert werden. Standardmäßig ist diese Eigenschaft auf „false“ gesetzt (die Aktion ist nicht markiert).

Hinweis: Das Notifier-Signal für diese Eigenschaft ist „ toggled “ (). Da das Umschalten eines „ QAction “ dessen Zustand ändert, wird außerdem das Signal „ changed “ () ausgelöst.

Zugriffsfunktionen:

bool isChecked() const
void setChecked(bool)

Benachrichtigungssignal:

void toggled(bool checked)

Siehe auch „ checkable “ und „ toggled “ ().

enabled : bool

Diese Eigenschaft gilt unabhängig davon, ob die Aktion aktiviert ist

Deaktivierte Aktionen können vom Benutzer nicht ausgewählt werden. Sie verschwinden zwar nicht aus Menüs oder Symbolleisten, werden jedoch so dargestellt, dass deutlich wird, dass sie nicht verfügbar sind. Beispielsweise können sie ausschließlich in Graustufen angezeigt werden.

What's This? Hilfe zu deaktivierten Aktionen ist weiterhin verfügbar, sofern die Eigenschaft „ QAction::whatsThis “ gesetzt ist.

Eine Aktion wird deaktiviert, wenn alle Widgets, denen sie hinzugefügt wurde (mit ` QWidget::addAction()`), deaktiviert oder nicht sichtbar sind. Ist eine Aktion deaktiviert, kann sie nicht über ihre Tastenkombination ausgelöst werden.

Standardmäßig ist diese Eigenschaft auf „ true “ gesetzt (Aktionen sind aktiviert).

Zugriffsfunktionen:

bool isEnabled() const
void setEnabled(bool)
void resetEnabled()

Notifier-Signal:

void enabledChanged(bool enabled)

Siehe auch ` text`.

font : QFont

Diese Eigenschaft enthält die Schriftart der Aktion

Die Eigenschaft „font“ dient zur Darstellung des in „ QAction “ festgelegten Textes. Die Schriftart kann als Hinweis betrachtet werden, da sie je nach Anwendung und Stil nicht in allen Fällen berücksichtigt wird.

Standardmäßig enthält diese Eigenschaft die Standardschriftart der Anwendung.

Zugriffsfunktionen:

QFont font() const
void setFont(const QFont &font)

Notifier-Signal:

void changed()

Siehe auch ` setText()`

icon : QIcon

Diese Eigenschaft enthält das Symbol der Aktion

In Symbolleisten wird das Symbol als Symbol für die Schaltfläche verwendet; in Menüs wird es links neben dem Menütext angezeigt, sofern „ QAction::iconVisibleInMenu “ den Wert „ true “ zurückgibt.

Es gibt kein Standard-Symbol.

Wird ein Null-Symbol (`QIcon::isNull()`) an diese Funktion übergeben, wird das Symbol der Aktion gelöscht.

Zugriffsfunktionen:

QIcon icon() const
void setIcon(const QIcon &icon)

Notifier-Signal:

void changed()

iconText : QString

Diese Eigenschaft enthält den beschreibenden Text des Aktionssymbols

Wenn „ QToolBar::toolButtonStyle “ auf einen Wert gesetzt ist, der die Anzeige von Text zulässt, erscheint der in dieser Eigenschaft definierte Text als Beschriftung auf der entsprechenden Schaltfläche.

Er dient außerdem als Standardtext in Menüs und Tooltips, wenn die Aktion nicht mit „ setText()“ oder „ setToolTip()“ definiert wurde, und wird auch in Symbolleisten-Schaltflächen verwendet, wenn kein Symbol mit „ setIcon()“ definiert wurde.

Wird der Symboltext nicht explizit festgelegt, wird der normale Text der Aktion als Symboltext verwendet.

Standardmäßig enthält diese Eigenschaft eine leere Zeichenkette.

Zugriffsfunktionen:

QString iconText() const
void setIconText(const QString &text)

Notifier-Signal:

void changed()

Siehe auch setToolTip() und setStatusTip().

iconVisibleInMenu : bool

Diese Eigenschaft legt fest, ob eine Aktion ein Symbol in einem Menü anzeigen soll oder nicht

In manchen Anwendungen kann es sinnvoll sein, dass Aktionen in der Symbolleiste mit Symbolen angezeigt werden, in Menüs jedoch nicht. Ist der Wert „true“, wird das Symbol (sofern vorhanden) im Menü angezeigt; ist der Wert „false“, wird es nicht angezeigt.

Standardmäßig richtet sich die Anzeige danach, ob für die Anwendung das Attribut „ Qt::AA_DontShowIconsInMenus “ gesetzt ist. Durch die explizite Festlegung dieser Eigenschaft wird das Vorhandensein (oder Fehlen) des Attributs außer Kraft gesetzt.

Beispiel:

QApplication app(argc, argv);
app.setAttribute(Qt::AA_DontShowIconsInMenus);  // Icons are *no longer shown* in menus
// ...
QAction *myAction = new QAction();
// ...
myAction->setIcon(SomeIcon);
myAction->setIconVisibleInMenu(true);   // Icon *will* be shown in menus for *this* action.

Zugriffsfunktionen:

bool isIconVisibleInMenu() const
void setIconVisibleInMenu(bool visible)

Notifier-Signal:

void changed()

Siehe auch „ icon “ und „ QCoreApplication::setAttribute()“.

Diese Eigenschaft gibt die Menürolle der Aktion an

Dies gibt an, welche Rolle die Aktion im Anwendungsmenü unter macOS einnimmt. Standardmäßig haben alle Aktionen die Rolle „ TextHeuristicRole “, was bedeutet, dass die Aktion anhand ihres Textes hinzugefügt wird (weitere Informationen finden Sie unter QMenuBar ).

Die Menürolle kann nur geändert werden, bevor die Aktionen in die Menüleiste unter macOS eingefügt werden (in der Regel unmittelbar bevor das erste Anwendungsfenster angezeigt wird).

Zugriffsfunktionen:

QAction::MenuRole menuRole() const
void setMenuRole(QAction::MenuRole menuRole)

Notifier-Signal:

void changed()

priority : Priority

Diese Eigenschaft gibt die Priorität der Aktion in der Benutzeroberfläche an.

Diese Eigenschaft kann festgelegt werden, um anzugeben, wie die Aktion in der Benutzeroberfläche priorisiert werden soll.

Wenn beispielsweise für Symbolleisten der Modus „ Qt::ToolButtonTextBesideIcon “ eingestellt ist, werden bei Aktionen mit der Eigenschaft „ LowPriority “ keine Textbeschriftungen angezeigt.

Zugriffsfunktionen:

QAction::Priority priority() const
void setPriority(QAction::Priority priority)

Benachrichtigungssignal:

void changed()

shortcut : QKeySequence

Diese Eigenschaft enthält die primäre Tastenkombination der Aktion

Gültige Tastencodes für diese Eigenschaft finden Sie unter Qt::Key und Qt::Modifier. Es gibt keine Standard-Tastenkombination.

Zugriffsfunktionen:

QKeySequence shortcut() const
void setShortcut(const QKeySequence &shortcut)

Benachrichtigungssignal:

void changed()

shortcutContext : Qt::ShortcutContext

Diese Eigenschaft enthält den Kontext für die Tastenkombination der Aktion

Gültige Werte für diese Eigenschaft finden Sie unter Qt::ShortcutContext. Der Standardwert lautet Qt::WindowShortcut.

Zugriffsfunktionen:

Qt::ShortcutContext shortcutContext() const
void setShortcutContext(Qt::ShortcutContext context)

Notifier-Signal:

void changed()

shortcutVisibleInContextMenu : bool

Diese Eigenschaft legt fest, ob für eine Aktion ein Tastenkürzel im Kontextmenü angezeigt werden soll oder nicht

In manchen Anwendungen kann es sinnvoll sein, Aktionen mit Tastenkombinationen in Kontextmenüs anzuzeigen. Ist der Wert „true“, wird die Tastenkombination (sofern gültig) angezeigt, wenn die Aktion über ein Kontextmenü aufgerufen wird; ist der Wert „false“, wird sie nicht angezeigt.

Standardmäßig richtet sich die Anzeige danach, ob für die Anwendung das Attribut „ Qt::AA_DontShowShortcutsInContextMenus “ gesetzt ist. Durch explizites Setzen dieser Eigenschaft wird das Attribut überschrieben.

Zugriffsfunktionen:

bool isShortcutVisibleInContextMenu() const
void setShortcutVisibleInContextMenu(bool show)

Benachrichtigungssignal:

void changed()

Siehe auch „ shortcut “ und „ QCoreApplication::setAttribute()“.

statusTip : QString

Diese Eigenschaft enthält den Status-Hinweis der Aktion

Der Status-Hinweis wird in allen Statusleisten angezeigt, die vom übergeordneten Widget der Aktion bereitgestellt werden.

Standardmäßig enthält diese Eigenschaft eine leere Zeichenkette.

Zugriffsfunktionen:

QString statusTip() const
void setStatusTip(const QString &statusTip)

Notifier-Signal:

void changed()

Siehe auch „ setToolTip()“ und „ showStatusText()“.

text : QString

Diese Eigenschaft enthält den beschreibenden Text der Aktion

Wird die Aktion zu einem Menü hinzugefügt, besteht die Menüoption aus dem Symbol (sofern vorhanden), dem Text und der Tastenkombination (sofern vorhanden). Wird der Text nicht explizit im Konstruktor oder mithilfe von `setText()` festgelegt, wird der Beschreibungstext des Symbols der Aktion als Text verwendet. Es gibt keinen Standardtext.

Bestimmte UI-Elemente, wie Menüs oder Schaltflächen, können ein „&“ vor einem Zeichen verwenden, um automatisch eine Mnemonik (eine Tastenkombination) für dieses Zeichen zu erstellen. Beispielsweise erzeugt „&File“ für ein Menü die Tastenkombination „ Alt+F “, die das Menü „Datei“ öffnet. „E&xit“ erzeugt für eine Schaltfläche die Tastenkombination Alt+X oder ermöglicht in einem Menü das Aufrufen des Menüelements durch Drücken von „x“. (Verwenden Sie „&&“, um ein echtes Und-Zeichen anzuzeigen.) Das Widget kann eine bestimmte Tastenkombination verarbeiten und eine Aktion ausführen.

Zugriffsfunktionen:

QString text() const
void setText(const QString &text)

Notifier-Signal:

void changed()

Siehe auch iconText.

toolTip : QString

Diese Eigenschaft enthält den Tooltip der Aktion

Dieser Text wird für den Tooltip verwendet. Wenn kein Tooltip angegeben ist, wird der Text der Aktion verwendet.

Standardmäßig enthält diese Eigenschaft den Text der Aktion.

Zugriffsfunktionen:

QString toolTip() const
void setToolTip(const QString &tip)

Notifier-Signal:

void changed()

Siehe auch setStatusTip() und setShortcut().

visible : bool

Diese Eigenschaft gibt an, ob die Aktion sichtbar ist (z. B. in Menüs und Symbolleisten)

Ist „visible“ auf „true“ gesetzt, ist die Aktion sichtbar (z. B. in Menüs und Symbolleisten) und kann vom Benutzer ausgewählt werden; ist „visible“ auf „false“ gesetzt, ist die Aktion für den Benutzer weder sichtbar noch auswählbar.

Aktionen, die nicht sichtbar sind, werden nicht ausgegraut; sie werden überhaupt nicht angezeigt.

Standardmäßig ist diese Eigenschaft auf „ true “ gesetzt (Aktionen sind sichtbar).

Zugriffsfunktionen:

bool isVisible() const
void setVisible(bool)

Notifier-Signal:

void visibleChanged()

whatsThis : QString

Diese Eigenschaft enthält den „Was ist das?“-Hilfetext der Aktion

Der „Was ist das?“-Text dient dazu, eine kurze Beschreibung der Aktion zu liefern. Der Text kann Rich-Text enthalten. Es gibt keinen Standardtext für „Was ist das?“.

Zugriffsfunktionen:

QString whatsThis() const
void setWhatsThis(const QString &what)

Benachrichtigungssignal:

void changed()

Siehe auch „ QWhatsThis “.

Dokumentation der Mitgliedsfunktionen

[explicit] QAction::QAction(QObject *parent = nullptr)

Erstellt eine Aktion mit „ parent “. Wenn „ parent “ eine Aktionsgruppe ist, wird die Aktion automatisch in die Gruppe eingefügt.

Hinweis: Das Argument „ parent “ ist seit Qt 5.7 optional.

[explicit] QAction::QAction(const QString &text, QObject *parent = nullptr)

Erstellt eine Aktion mit den Angaben „ text “ und „ parent “. Wenn „ parent “ eine Aktionsgruppe ist, wird die Aktion automatisch in die Gruppe eingefügt.

Eine gekürzte Version von text (zum Beispiel wird aus „&Menüoption...“ „Menüoption“) wird für Tooltips und Symboltexte verwendet, sofern Sie nicht über setToolTip() bzw. setIconText() einen anderen Text angeben.

Siehe auch text.

[explicit] QAction::QAction(const QIcon &icon, const QString &text, QObject *parent = nullptr)

Erstellt eine Aktion mit einem „ icon “ sowie „ text “ und „ parent “. Wenn „ parent “ eine Aktionsgruppe ist, wird die Aktion automatisch in die Gruppe eingefügt.

Eine gekürzte Version von text (zum Beispiel wird aus „&Menüoption...“ „Menüoption“) wird für Tooltips und Symboltexte verwendet, sofern Sie nicht über setToolTip() bzw. setIconText() einen anderen Text angeben.

Siehe auch „ text “ und „ icon “.

[virtual noexcept] QAction::~QAction()

Löscht das Objekt und gibt die zugewiesenen Ressourcen frei.

QActionGroup *QAction::actionGroup() const

Gibt die Aktionsgruppe für diese Aktion zurück. Wenn diese Aktion von keiner Aktionsgruppe verwaltet wird, wird „ nullptr “ zurückgegeben.

Siehe auch „ QActionGroup “ und „ setActionGroup()“.

void QAction::activate(QAction::ActionEvent event)

Sendet die entsprechenden Signale an ActionEvent event .

Aktionsbasierte Widgets nutzen diese API, um die „ QAction “ dazu zu veranlassen, Signale auszusenden, und senden zudem ihre eigenen Signale aus.

[since 6.0] QList<QObject *> QAction::associatedObjects() const

Gibt eine Liste der Objekte zurück, denen diese Aktion hinzugefügt wurde.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch QWidget::addAction() und QGraphicsWidget::addAction().

[signal] void QAction::changed()

Dieses Signal wird ausgelöst, wenn sich eine Aktion geändert hat. Wenn Sie nur an Aktionen in einem bestimmten Widget interessiert sind, können Sie auf das Signal „ QWidget::actionEvent()“ achten, das mit einem „ QEvent::ActionChanged “ gesendet wird.

Hinweis: Notifier-Signal für die Eigenschaften ` autoRepeat`, ` font`, ` icon`, ` iconText`, ` iconVisibleInMenu`, ` menuRole`, ` priority`, ` shortcut`, ` shortcutContext`, ` shortcutVisibleInContextMenu`, ` statusTip`, ` text`, ` toolTip` und ` whatsThis`.

Siehe auch QWidget::actionEvent().

QVariant QAction::data() const

Gibt die in QAction::setData festgelegten Benutzerdaten zurück.

Siehe auch setData().

[override virtual protected] bool QAction::event(QEvent *e)

Implementiert: ` QObject::event(QEvent *e)`.

[slot] void QAction::hover()

Dies ist ein Komfort-Slot, der „activate(Hover)“ aufruft.

[signal] void QAction::hovered()

Dieses Signal wird ausgelöst, wenn der Benutzer eine Aktion markiert; beispielsweise wenn er den Mauszeiger über einer Menüoption oder einer Schaltfläche in der Symbolleiste verweilt oder die Tastenkombination für eine Aktion drückt.

Siehe auch „ activate“ ().

bool QAction::isSeparator() const

Gibt „ true “ zurück, wenn es sich bei dieser Aktion um eine Trennzeichenaktion handelt; andernfalls wird „ false “ zurückgegeben.

Siehe auch setSeparator().

Gibt das Menü zurück, das diese Aktion enthält.

In Widget-Anwendungen können Aktionen, die Menüs enthalten, dazu verwendet werden, Menüelemente mit Untermenüs zu erstellen, oder in Symbolleisten eingefügt werden, um Schaltflächen mit Popup-Menüs zu erstellen.

Siehe auch setMenu(), QMenu::addAction() und QMenu::menuInAction().

void QAction::setActionGroup(QActionGroup *group)

Setzt diese Aktionsgruppe auf „ group “. Die Aktion wird automatisch zur Aktionsliste der Gruppe hinzugefügt.

Aktionen innerhalb der Gruppe schließen sich gegenseitig aus.

Siehe auch „ QActionGroup “ und „ actionGroup()“.

void QAction::setData(const QVariant &data)

Setzt die internen Daten der Aktion auf den angegebenen Wert „ data “.

Siehe auch ` data()`.

[slot] void QAction::setDisabled(bool b)

Dies ist eine Hilfsfunktion für die Eigenschaft „ enabled “, die bei der Verknüpfung von Signalen und Slots nützlich ist. Ist „ b “ wahr, ist die Aktion deaktiviert; andernfalls ist sie aktiviert.

void QAction::setMenu(QMenu *menu)

Legt das in dieser Aktion enthaltene Menü auf die angegebene Adresse menu fest.

Siehe auch menu().

void QAction::setSeparator(bool b)

Wenn „ b “ auf „true“ gesetzt ist, wird diese Aktion als Trennzeichen betrachtet.

Wie ein Trennzeichen dargestellt wird, hängt von dem Widget ab, in das es eingefügt wird. In den meisten Fällen werden Text, Untermenü und Symbol bei Trennzeichen-Aktionen ignoriert.

Siehe auch ` isSeparator()`.

void QAction::setShortcut(const QKeySequence &shortcut)

Legt „ shortcut “ als einzige Tastenkombination fest, die die Aktion auslöst.

Hinweis: Setter -Funktion für die Eigenschaft ` shortcut`.

Siehe auch „ shortcut “ und „ setShortcuts()“.

void QAction::setShortcuts(QKeySequence::StandardKey key)

Legt eine plattformabhängige Liste von Tastenkombinationen fest, basierend auf der Datei „ key “. Das Ergebnis des Aufrufs dieser Funktion hängt von der aktuell ausgeführten Plattform ab. Beachten Sie, dass dieser Aktion mehr als eine Tastenkombination zugewiesen werden kann. Wenn nur die primäre Tastenkombination benötigt wird, verwenden Sie stattdessen „ setShortcut “.

Siehe auch shortcuts() und QKeySequence::keyBindings().

void QAction::setShortcuts(const QList<QKeySequence> &shortcuts)

Legt „ shortcuts “ als Liste der Tastenkombinationen fest, die die Aktion auslösen. Das erste Element der Liste ist die primäre Tastenkombination.

Siehe auch „ shortcut “ und „ setShortcut()“.

QKeySequence QAction::shortcut() const

Gibt die primäre Abkürzung zurück.

Hinweis: Getter -Funktion für die Eigenschaft „shortcut“.

Siehe auch „ setShortcuts()“.

QList<QKeySequence> QAction::shortcuts() const

Gibt die Liste der Tastenkombinationen zurück, wobei die primäre Tastenkombination das erste Element der Liste ist.

Siehe auch „ setShortcuts()“.

bool QAction::showStatusText(QObject *object = nullptr)

Aktualisiert die entsprechende Statusleiste für die durch object dargestellte Benutzeroberfläche, indem ein „ QStatusTipEvent “ gesendet wird. Gibt „ true “ zurück, wenn ein Ereignis gesendet wurde, andernfalls „ false “.

Wenn ein Null-Widget angegeben wird, wird das Ereignis an das übergeordnete Element der Aktion gesendet.

Siehe auch statusTip.

[slot] void QAction::toggle()

Dies ist eine Hilfsfunktion für die Eigenschaft „ checked “. Stellen Sie eine Verbindung dazu her, um den Markierungsstatus in den entgegengesetzten Status umzuschalten.

[signal] void QAction::toggled(bool checked)

Dieses Signal wird immer dann ausgelöst, wenn eine aktivierbare Aktion ihren Status „ isChecked()“ ändert. Dies kann durch eine Benutzerinteraktion oder durch den Aufruf von „ setChecked()“ verursacht werden. Da „ setChecked()“ den Status „ QAction “ ändert, löst es zusätzlich zu „toggled()“ auch „ changed()“ aus.

checked ist „true“, wenn die Aktion aktiviert ist, oder „false“, wenn die Aktion deaktiviert ist.

Hinweis: Notifier -Signal für die Eigenschaft „ checked “.

Siehe auch „ activate()“, „ triggered()“ und „ checked “.

[slot] void QAction::trigger()

Dies ist ein Komfort-Slot, der die Funktion „activate(Trigger)“ aufruft.

[signal] void QAction::triggered(bool checked = false)

Dieses Signal wird ausgelöst, wenn eine Aktion vom Benutzer aktiviert wird; beispielsweise wenn der Benutzer auf eine Menüoption oder eine Schaltfläche in der Symbolleiste klickt, die Tastenkombination einer Aktion drückt oder wenn die Methode ` trigger()` aufgerufen wurde. Es wird jedoch nicht ausgelöst, wenn die Methoden ` setChecked()` oder ` toggle()` aufgerufen werden.

Wenn die Aktion aktivierbar ist, ist ` checked ` wahr, wenn die Aktion aktiviert ist, oder falsch, wenn die Aktion deaktiviert ist.

Siehe auch activate(), toggled() und checked.

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