在Qt中制作自定义菜单栏

时间:2011-03-21 13:15:01

标签: qt qt4 nokia menubar

我正在开发一款使用Qt for s60 v5和symbain 3的移动应用程序。 现在我想要一个屏幕底部的菜单栏。它应该有OPTIONS按钮,Exit按钮。 并在它们之间添加一个按钮。如何才能做到这一点?我尝试了一些东西,但无法将菜单栏放在屏幕的底部。 我想要一些关于创建自定义菜单栏并将其放置在我想要的任何地方的指针。最好看起来应该是原生的。

2 个答案:

答案 0 :(得分:4)

您可以将非本机QMenuBar放置在布局中,就像任何其他窗口小部件一样。以下是一个示例应用程序。

#include <QApplication>
#include <QMenuBar>
#include <QVBoxLayout>

int main(int argc, char **argv)
{
    QApplication app(argc, argv);
    QWidget window;
    QVBoxLayout layout(&window);
    QMenuBar menubar(&window);

    layout.addStretch();
    menubar.addMenu("&File");
    layout.addWidget(&menubar);
    window.show();

    return app.exec();
}

答案 1 :(得分:0)

我认为您不能强制菜单栏位于屏幕底部。但是,您可以:

1)使用集成的menuBar()函数获取真实的菜单栏,并按照本机操作系统(如symbian)的方式设置菜单。

2)创建一个QHBoxLayout并添加按钮,创建一个弹出菜单,创建自己的菜单栏。一旦完成,它将与菜单栏非常相似。你可能想要使用按钮浮雕布局。