Название: QMenu не QAction Отправлено: QuAzI от Декабрь 13, 2010, 03:18 Как по феншую обработать клик по QMenu (имеется введу именно клик по QMenu, верхнего уровня, а не по дочернему QAction в выпадающем списке), если при привязке его выдаёт ошибку
Код: Object::connect: No such signal QMenu::triggered() Привязываю так Код: connect(ui->mCacheDir, SIGNAL(triggered()), this, SLOT(mcCacheDir())); Название: Re: QMenu не QAction Отправлено: Fat-Zer от Декабрь 13, 2010, 04:59 А зачем? добавьте QAction в строку меню...
Название: Re: QMenu не QAction Отправлено: QuAzI от Декабрь 13, 2010, 08:39 Не для всех пунктов меню удачно подбирается категория. А делать меню с одним пунктом немного странно, с точки зрения пользователя.
Название: Re: QMenu не QAction Отправлено: alexman от Декабрь 13, 2010, 09:37 А делать меню с одним пунктом немного странно, с точки зрения пользователя. Нормальная ситуация! А вообще можно попробовать void QMenu::aboutToShow () [signal].Название: Re: QMenu не QAction Отправлено: Авварон от Декабрь 13, 2010, 09:52 http://doc.qt.nokia.com/stable/qmenu.html#menuAction
Название: Re: QMenu не QAction Отправлено: QuAzI от Декабрь 13, 2010, 13:11 Согласно документации всё-таки есть такой сигнал QMenu::triggered. Как и aboutToShow. Но ни на FreeBSD, ни на Windows (Qt SDK 2010.05) triggered() не отработал. Ну и чёрт с ним, aboutToShow отлично его заменяет.
Название: Re: QMenu не QAction Отправлено: SABROG от Декабрь 13, 2010, 13:15 Так пробовал?
Код
Название: Re: QMenu не QAction Отправлено: alexman от Декабрь 13, 2010, 14:46 Согласно документации всё-таки есть такой сигнал QMenu::triggered. Вообще-то есть сигнал void QMenu::triggered ( QAction * action ) [signal] // This signal is emitted when an action in this menu is triggered. Но вы же не добавляете ни одного экшина, то есть сигнал и не должен отрабатывать.Название: Re: QMenu не QAction Отправлено: lit-uriy от Декабрь 13, 2010, 17:22 пункт меню на QMenuBar - это QAction, отсель и копайте
Название: Re: QMenu не QAction Отправлено: Fat-Zer от Декабрь 13, 2010, 18:30 пункт меню на QMenuBar - это QAction, отсель и копайте Вообще нет - смотрите документациюЗЫ: имел ввиду тоже, что и SABROG Название: Re: QMenu не QAction Отправлено: lit-uriy от Декабрь 13, 2010, 19:15 >>Вообще нет - смотрите документацию.
У QMenu можно узнать соответствующий ему QAction. Т.е. логика и напрашивается такая, как я описал. Просто до ума не доведено. |