如何将常用导航栏添加到Meego应用程序?

时间:2011-02-20 17:50:56

标签: c++ qt meego

使用Meego Touch Framework时,标准MApplicationWindow已经附加了公共导航栏(带有切换器,菜单和关闭按钮)。

例如,以下代码:

#include <MApplication>
#include <MApplicationWindow>

int main(int argc, char *argv[]){
    MApplication app(argc, argv);
    MApplicationWindow w;
    w.show();
    return app.exec();
}

使用看起来similar to this的菜单栏创建一个空白窗口(例如,切换器按钮,菜单和顶部的关闭按钮)。

但是,由于docs阻止使用Touch Framework我想避免使用它,那么如何仅使用standard API创建一个类似的外观窗口?

2 个答案:

答案 0 :(得分:1)

我将如何实现这一点,可能是一个固定高度,可变宽度的QHBoxLayout,其中包含需要它的那些索引的伸展因子。然后我会使用QPushButton和QCombobBox作为小部件,并使用自定义样式表和图标完成它们。然后我将这些内容包装在一个整洁的小自定义小部件中,我可以在我的主视图类中重用它。

主视图应该是一个窗口类,它将导航栏小部件保存在QVBoxLayout之上,以及它下面的实际内容。底部索引会有一个伸展因子,因此上面的索引总是位于顶部。

我不太清楚Meego手机的UX应该如何表现,但这就是我如何创建一个类似的导航栏。

答案 1 :(得分:1)

我会选择QMainWindow类,因为这个类已经有菜单,工具栏,状态栏aso。
但是你应该自己处理方向切换(我看到纵向模式下的工具栏位于底部,而横向模式下则位于顶部)。
这可以通过设置正确的Qt :: ToolbarArea值来实现。

可以使用Qt样式表设置按钮的样式和窗口本身。

相关问题