Qt MainWindow没有显示MenuBar

时间:2017-11-19 18:38:33

标签: c++ qt menubar mainwindow

在下面的代码中,我创建了Qt Widget的应用程序,基类QMainWindow,没有.ui格式。 不明白为什么MenuBar没有显示,尝试了不同的变种,没有人工作。

此图片展示了我的内容

系统Ubuntu 16.04。 使用QMake 3.0版和Qt版本5.5.1

注意:在其他计算机上,相同的代码可以正常工作。

在mainwindow.h下面

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QtGui>
#include <QWidget>

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow();
private:
    QMenu *file;
};

#endif // MAINWINDOW_H

在mainwindow.cpp下面,注释行显示我是如何尝试修复它的。

#include "mainwindow.h"
#include <QtGui>
#include <QtWidgets>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    //QVBoxLayout *vbl = new QVBoxLayout;
    QMenu *file = new QMenu("&File"); //menuBar()->addMenu("&File");//new QMenu("&File");
    file->addAction("&Quit",qApp,SLOT(quit()),Qt::CTRL+Qt::Key_Q);


    QMenuBar *mb = menuBar();

    mb->addMenu(file);
    mb->show();
    setMenuBar(mb);

    //vbl->setMenuBar(mb);
    //setLayout(vbl);

    resize(400,400);
}

MainWindow::~MainWindow()
{

}

1 个答案:

答案 0 :(得分:1)

经过一些调查和重新安装所有组件后,我解决了这个简单的问题。需要更改系统设置 - &gt;外观 - &gt;行为&#39; &#39;显示窗口菜单的参数&#39;来自&#34;在菜单栏&#34;到&#34;在窗口的标题栏&#34;。感谢所有试图提供帮助的人。