widget.h :
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QMenu>
#include <QAction>
#include <QMenuBar>
#include <QLabel>
#include <QMainWindow>
class Widget : public QWidget
{
Q_OBJECT
private:
QAction* action;
QLabel* lbl;
QMenuBar* bar;
QMenu* menu;
public:
Widget(QWidget *parent = 0);
~Widget();
public slots:
void slotOnActionTriggered();
};
#endif // WIDGET_H
widget.cpp :
#include "widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
action = new QAction(this);
action->setCheckable(true);
action->setText("Action");
action->setShortcut(QKeySequence(Qt::CTRL+Qt::Key_A));
QObject::connect(action,SIGNAL(triggered(bool)),this,SLOT(slotOnActionTriggered()));
bar = new QMenuBar(this);
menu = new QMenu("&Menu",bar);
bar->addMenu(menu);
lbl=new QLabel("",this);
bar->show();
}
Widget::~Widget()
{
}
void Widget::slotOnActionTriggered(){
static bool triggered = false;
if(triggered){
lbl->setText("");
triggered = true;
}
else{
lbl->setText("Action triggered");
triggered = false;
}
}
main.cpp :
#include "widget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
w.show();
return a.exec();
}
Все равно не отображается меню. Просто пустое окошко. Пробовал наследоваться от QMainWindow и делать QMainWindow::setMenuBar(), не помогает.
Работаю из под Mac.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Зависает GUI при изменении QProgressBar из QThread с помощью сигналов
Здравствуйте! Пытаюсь установить YouCompleteMe для подсказок в Vim