MenuBar QML Type

Bietet eine Fenster-Menüleiste. Mehr...

Import Statement: import QtQuick.Controls
Inherits:

Container

Eigenschaften

Methoden

Ausführliche Beschreibung

MenuBar besteht aus Dropdown-Menüs und befindet sich normalerweise am oberen Rand des Fensters.

ApplicationWindow {
    id: window
    width: 320
    height: 260
    visible: true

    menuBar: MenuBar {
        Menu {
            title: qsTr("&File")
            Action { text: qsTr("&New...") }
            Action { text: qsTr("&Open...") }
            Action { text: qsTr("&Save") }
            Action { text: qsTr("Save &As...") }
            MenuSeparator { }
            Action { text: qsTr("&Quit") }
        }
        Menu {
            title: qsTr("&Edit")
            Action { text: qsTr("Cu&t") }
            Action { text: qsTr("&Copy") }
            Action { text: qsTr("&Paste") }
        }
        Menu {
            title: qsTr("&Help")
            Action { text: qsTr("&About") }
        }
    }
}

Normalerweise werden Menüs statisch als Kinder der Menüleiste deklariert, aber MenuBar bietet auch eine dynamische API für die Menüs add, insert, remove und take. Auf die Menüs in einer Menüleiste kann mit menuAt() zugegriffen werden.

Native Menüleisten

Seit Qt 6.8 ist eine MenuBar als native Menüleiste unter macOS implementiert. Das hat zur Folge, dass alle Menüs, MenuItems und MenuBarItems innerhalb einer MenuBar auch nativ sein werden. Dies hat zwar den Vorteil, dass alles nativ aussieht, aber auch den Nachteil, dass die Delegaten, die auf den genannten Steuerelementen gesetzt sind, nicht zum Rendern verwendet werden. Wenn eine native MenuBar nicht erwünscht ist, können Sie sie unter QGuiApplication::setAttribute(Qt::AA_DontUseNativeMenuBar) deaktivieren.

Siehe auch Customizing MenuBar, Menu, MenuBarItem, Menu Controls, und Focus Management in Qt Quick Controls.

Eigenschaft Dokumentation

contentHeight : real [since QtQuick.Controls 2.3 (Qt 5.10)]

Diese Eigenschaft enthält die Höhe des Inhalts. Sie wird für die Berechnung der impliziten Gesamthöhe der Menüleiste verwendet.

Hinweis: Diese Eigenschaft ist in MenuBar seit QtQuick.Controls 2.3 (Qt 5.10) verfügbar, wurde aber in QtQuick.Controls 2.5 (Qt 5.12) zum Basistyp Container befördert.

Diese Eigenschaft wurde in QtQuick.Controls 2.3 (Qt 5.10) eingeführt.

Siehe auch Container::contentHeight.


contentWidth : real [since QtQuick.Controls 2.3 (Qt 5.10)]

Diese Eigenschaft enthält die Breite des Inhalts. Sie wird für die Berechnung der gesamten impliziten Breite der Menüleiste verwendet.

Hinweis: Diese Eigenschaft ist in MenuBar seit QtQuick.Controls 2.3 (Qt 5.10) verfügbar, wurde aber in QtQuick.Controls 2.5 (Qt 5.12) zum Basistyp Container befördert.

Diese Eigenschaft wurde in QtQuick.Controls 2.3 (Qt 5.10) eingeführt.

Siehe auch Container::contentWidth.


delegate : Component

Diese Eigenschaft enthält die Komponente, die zum Erstellen von Menüleisteneinträgen verwendet wird, um Menüs in der Menüleiste zu präsentieren.

Siehe auch MenuBarItem.


Diese Eigenschaft enthält die Liste der Menüs.

Die Liste enthält alle Menüs, die in QML als Kinder der Menüleiste deklariert wurden, sowie Menüs, die mit den Methoden addMenu() und insertMenu() dynamisch hinzugefügt oder eingefügt wurden.


Methode Dokumentation

void addMenu(Menu menu)

Fügt menu an das Ende der Liste der Menüs hinzu.


void insertMenu(int index, Menu menu)

Fügt menu an index ein.


Gibt das Menü unter index zurück, oder null, wenn es nicht existiert.


void removeMenu(Menu menu)

Entfernt das angegebene menu. Wenn das Menü open ist, wird es zunächst dismissed. Die Adresse menu wird schließlich vom Garbage Collector gelöscht, wenn die Anwendung keine QML-Referenzen mehr darauf enthält.


Menu takeMenu(int index)

Entfernt und gibt das Menü unter index zurück. Wenn das Menü open ist, wird es zunächst dismissed. Das Menü wird schließlich vom Garbage Collector gelöscht, wenn die Anwendung keine QML-Referenzen mehr darauf enthält.


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