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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Меню на подобие exel'евского  (Прочитано 3274 раз)
Diablus
Гость
« : Август 31, 2012, 11:50 »

Собственно каким образом грамотно реализовывать такое меню?
Устанавливать собственный виджет (setMenuWidget), перегруженный к примеру QTabWidget и уже в нем перегружать функции рисования?
Или же устанавливать QAction'ы в обычном QMenuBar, тогда каким образом пространственно 'прикрепить' виджеты к менюшке?

Буду благодарен чужому опыту.
Записан
mutineer
Гость
« Ответ #1 : Август 31, 2012, 11:52 »

В Excel много разных меню, ты о каком говоришь?
Записан
Serr500
Гость
« Ответ #2 : Август 31, 2012, 12:04 »

Ribbon, скорее всего.
Записан
mutineer
Гость
« Ответ #3 : Август 31, 2012, 12:08 »

Ну если имеется в виду Ribbon, то http://www.prog.org.ru/index.php?PHPSESSID=2094f2f9d1a8bf8ca8df06f7a54662c0&topic=16004.0
Записан
Diablus
Гость
« Ответ #4 : Август 31, 2012, 13:04 »

спасибо, буду разбираться
Записан
Dr.Vlad
Гость
« Ответ #5 : Сентябрь 04, 2012, 18:49 »

"Или же устанавливать QAction'ы в обычном QMenuBar, тогда каким образом пространственно 'прикрепить' виджеты к менюшке?"

Коннектить нужно через сигнал-слот.
QAction* action = new QAction("bla-bla", this)

connect(action, SIGNAL(выберите сами), this, SLOT(пропишите void функцию))
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #6 : Сентябрь 04, 2012, 21:17 »

2 Dr.Vlad:
Через обычный QAction виджет на меню не поместить. Для этого нужно использовать QWidgetAction.
Записан

Qt 5.11/4.8.7 (X11/Win)
Dr.Vlad
Гость
« Ответ #7 : Сентябрь 04, 2012, 22:31 »

2 Dr.Vlad:
Через обычный QAction виджет на меню не поместить. Для этого нужно использовать QWidgetAction.

Пардон,
QMenuBar *menuBar = new QMenuBar(this);
QMenu *menu = new QMenu("nameMenu", menuBar);
menu->addAction(action);
menuBar->addMenu(menu);


Есть варианты, разумеется. Непосредственно визуализировать виджеты через панель несколько некрасиво.
« Последнее редактирование: Сентябрь 04, 2012, 22:34 от Dr.Vlad » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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