菜单栏和工具栏在Qt Android上不一起显示



我想在Android上的ApplicationWindow中同时显示MenuBarToolBar,但它不起作用:

import QtQuick 2.5
import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.2
ApplicationWindow {
    visible: true
    menuBar: MenuBar {
        Menu {
            title: qsTr("File")
            MenuItem {
                text: qsTr("Exit")
                onTriggered: Qt.quit();
            }
        }
    }
    toolBar: ToolBar {
        RowLayout {
            anchors.fill: parent
            ToolButton {
                text: "exit";
                onClicked: Qt.quit();
            }
        }
    }
    statusBar: Label { text: "statusBar" }
}

这段代码只是显示工具栏。如果我注释掉ToolBar代码,我可以看到MenuBar。我在Windows上使用Qt 5.5.1(GCC 4.9)。

我做错了什么?

观察到的行为在某种程度上是有意的。关于ActionBar的平台说明很清楚:

Action Bar是一个特殊的Android控件,它提供了许多关键功能,包括各种导航模式、操作、选项菜单、后退按钮,还显示应用程序图标和标题。

与Qt小工具不同,Qt快速控制不使用Android上的本地操作栏ToolBar和MenuBar作为跨平台的替代品提供。它们被统一为一个单独的";动作条";当分配给适当的ApplicationWindow属性时

因此,你所观察到的应该是两者的合并行为。如果您在实现该方法时遇到困难,请参阅库示例,该示例提供了上面讨论的统一操作栏的清晰、简单的实现。

最新更新