Вставка текста в строку меню QML

#javascript #qt #qml

#javascript #qt #qml

Вопрос:

Эти меню по умолчанию отображаются с левой стороны. Я хочу поместить некоторый текст в левой части, прежде чем начнет появляться меню.

Как сдвинуть меню вправо, чтобы освободить место для текста в строке меню?

Я хочу следующее:
введите описание изображения здесь

Этот текст «AmplifyRemote» появляется перед запуском меню. Как добиться этого здесь?

 ApplicationWindow
{
    id: window; visible: true; width: Screen.width; height: Screen.height; flags: Qt.FramelessWindowHint

    menuBar:
      MenuBar
      {
        id: menuBar

        Menu { title: qsTr("File") }
        Menu { title: qsTr("Edit") }
        Menu { title: qsTr("View") }
        Menu { title: qsTr("Help") }

        delegate: MenuBarItem {
            id: menuBarItem

            font
            {
                pointSize: decoration.font_size_8
                family: decoration.font_family
            }
            contentItem: Text {
                text: menuBarItem.text
                font: menuBarItem.font
                opacity: enabled ? 1.0 : 0.3
                color: menuBarItem.highlighted ? "white":"#3F3F3F"
                horizontalAlignment: Text.AlignLeft
                verticalAlignment: Text.AlignVCenter
                elide: Text.ElideRight
            }

            background: Rectangle {
                implicitWidth: 40
                implicitHeight: 40
                opacity: enabled ? 1 : 0.3
                color: menuBarItem.highlighted ? "#292a38" : "transparent"
            }
        }

        background: Rectangle {
            implicitWidth: 40
            implicitHeight: 11
            color: "#d2d2d2"

            // This is the text I want before menus start
            Text{ text:"jjjjjjjjj"; anchors.left: parent.left}    

            Rectangle {
                color: "#21be2b"
                width: parent.width
                height: 1
                anchors.bottom: parent.bottom
            }
        }
    }
}
 

Комментарии:

1. Вместо того, чтобы добавлять свой специальный текст как часть фона, не могли бы вы добавить его в качестве другого пункта меню, который отключен, поэтому его нельзя выбрать?

2. Пожалуйста, покажите, как это можно сделать. @jarman

Ответ №1:

Возможно, есть более привлекательные решения, но это может сработать, если добавить специальный пункт меню в начало вашего списка, который отключен.

 MenuBar {
    id: menuBar

    Menu { title: "jjjjjjjj" }
    Menu { title: qsTr("File") }
    Menu { title: qsTr("Edit") }
    Menu { title: qsTr("View") }
    Menu { title: qsTr("Help") }

    delegate: MenuBarItem {
        id: menuBarItem

        enabled: text !== "jjjjjjjj"
    }
}