Russian Qt Forum
Ноябрь 23, 2024, 20:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Не отображается меню  (Прочитано 2984 раз)
b3lll
Гость
« : Апрель 28, 2016, 00:06 »

Добрый день! Начал изучать qt и возник такой вопрос.
Есть такой код:

Код:
#include <QApplication>
#include <QMenu>
#include <QMenuBar>
#include <QMainWindow>

int main(int argc, char *argv[])
 {
   QApplication app(argc, argv);
   QMainWindow *mainw=new QMainWindow;
   mainw->resize(400,300);
   QMenuBar *menu=new QMenuBar(mainw);

   QMenu *qmenu=new QMenu(menu);
   qmenu->addMenu("&File");
   qmenu->addMenu(qmenu->addMenu("&Open"));


   mainw->show();
   return app.exec();
}

Компилируется нормально, при запуске голое окно, меню отсутствует. В чем я ошибся? Спасибо.
Записан
Bepec
Гость
« Ответ #1 : Апрель 28, 2016, 02:55 »

Код:
mainw->setMenuBar(menu);

И да, qmenu у вас не связано с menu, потому у вас будет пустой QMenuBar Улыбающийся
« Последнее редактирование: Апрель 28, 2016, 03:35 от Bepec » Записан
b3lll
Гость
« Ответ #2 : Апрель 28, 2016, 08:43 »

Добавил, не отображается.

Разобрался, добавил

Код:
qmenu->show();

Теперь меню отображается вне окна...
« Последнее редактирование: Апрель 28, 2016, 10:03 от b3lll » Записан
PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #3 : Апрель 28, 2016, 10:16 »

Код:
qmenu->show();

Теперь меню отображается вне окна...

Так не надо.

Надо так:

Код:
QAction *QMenuBar::addMenu(QMenu *menu)
Записан
b3lll
Гость
« Ответ #4 : Апрель 28, 2016, 10:33 »

Работает, спасибо за ответы.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.084 секунд. Запросов: 22.