Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Создание контекстного меню
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt GUI
AD
Не могу найти класс создания контекстного меню. Подскажите, пожалуйста

Нажмите для просмотра прикрепленного файла

P.S. Блин, почему картинку 18Кб загрузить не может???
void*
делается все очень просто: создаешь в своем виджете QMenu с нужными QAction'ами, затем обрабатываешь событие contextMenuEvent:
public:
            QMenu *menu;
protected:
            virtual void contextMenuEvent(QContextMenuEvent *event) {
                                      menu->exec(event->globalPos());
            }
AD
Цитата(void* @ 15.7.2008, 10:42) *
делается все очень просто: создаешь в своем виджете QMenu с нужными QAction'ами, затем обрабатываешь событие contextMenuEvent:
public:
            QMenu *menu;
protected:
            virtual void contextMenuEvent(QContextMenuEvent *event) {
                                      menu->exec(event->globalPos());
            }

Неплохо, спасибо. Но мне в это контекстное меню есть желание поместить то, что не отображено на панели меню. Такое возможно? По идее, для этого следует создать QMenu* myMenu, для него набор QAction* myActions[5], а потом запустить это меню в этой функции. Правильно я понял? Так, получается, надо сделать?
void*
Цитата(AD @ 15.7.2008, 10:09) *
Но мне в это контекстное меню есть желание поместить то, что не отображено на панели меню. Такое возможно?

а почему нет? ты можешь использовать любой объект QMenu, не обязательно тот, что на панели
по сути в обработчике события мы только запускаем меню в нужной точке (повторяю - меню может быть абсолютно любым)
Litkevich Yuriy
Цитата(AD @ 15.7.2008, 14:09) *
Но мне в это контекстное меню есть желание поместить то, что не отображено на панели меню

В панели меню сгрупированы QAction'ы, суй эти же объекты в лбое другое меню
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2021 IPS, Inc.