Название: Как перекрыть в главном меню появление всплывающего меню? Отправлено: Germiona от Май 19, 2008, 11:53 Главное меню состоит из всплывающих окон,но одно из них не содержит в себе никаких элементов и при его активации сразу должно происходить событие. Как это сделать и как избавиться от всплывающего пустого "хвостика" QPopup-меню?
Если использовать фильтры,то какое значение имеет e->type() при выборе команды меню? Название: Re: Как перекрыть в главном меню появление всплывающего меню? Отправлено: Mikhail от Май 19, 2008, 14:01 Главное меню состоит из всплывающих окон,но одно из них не содержит в себе никаких элементов и при его активации сразу должно происходить событие. Как это сделать и как избавиться от всплывающего пустого "хвостика" QPopup-меню? Если использовать фильтры,то какое значение имеет e->type() при выборе команды меню? Ну, например, так: QMenu * menu; //menu - меню по которому кликаеш и оно не имеет подменю, как требуется QAction * act = menu->menuAction (); connect( act, SIGNAL(triggered()), this, SLOT(slot_act())); Название: Re: Как перекрыть в главном меню появление всплывающего меню? Отправлено: Germiona от Май 19, 2008, 14:22 Использую QT3, там нет таких функций :(
Название: Re: Как перекрыть в главном меню появление всплывающего меню? Отправлено: Germiona от Май 19, 2008, 15:15 Нашла такой способ:
Код: QMenuBar *menuBar = new QMenuBar(this); В меню команда появилась,при клике слот отрабатывается.....но...если выбрать соседнюю команду в меню(появится всплывающее меню) и перевести мышь на команду "Exit",то произойдет тоже самое,что и при клике..... :-\ а мне нужно,чтобы слот отрабатывался только при клике мышкой на команду. Как определить каким образом вызывается слот exit(): от клика мыши или просто от наведения курсора мышки при активном соседнем меню? ??? |