Создание вложенного действия QAction |
Здравствуйте, гость ( Вход | Регистрация )
Создание вложенного действия QAction |
Litkevich Yuriy |
31.7.2010, 18:42
Сообщение
#1
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Не могу понять как создать вложенное действие (подменю)
Есть указатель на QAction, например: Нужно что бы функция сделала, для входного "действия" выпадающее меню с пунктом newaction и вернула указатель на "действие" ассоциированное с этим пунктом.Схема меню: пункт1 пункт2 action.text() > newaction пункт3 где: action.text() - существующий пункт меню, к которому требуется добавить подменю newaction - вновь созданный пункт подменю |
|
|
Алексей1153 |
31.7.2010, 22:21
Сообщение
#2
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
void setSubActon(QAction *) - Скорее должно бы выглядеть так
То есть, такой метод уже есть - SetMenu ------------------------- QAction * QAction::parentAction() - это относится к QMenu, то есть а это вроде есть тоже Цитата QAction * QMenu::menuAction () const Returns the action associated with this menu. ----------------------------- QList<QAction *> childActions() - это тоже метод меню должОн быть. (аналога не нашёл ) --------------------- Если меню создаётся с нуля, то проще всего вести ассоциативный список map<QString,QAction*> Пример содержимого (адреса абстрактные, а ключи - реальные): "Правка/" , 0x1 "Правка/Копировать/" , 0x2 "Правка/Вставить/", 0x3 "Настройки/", 0x4 "Настройки/Модули/", 0x5 "Настройки/Модули/Редактор/", 0x6 А для полного комфорту, возможно, ещё придётся вести эквивалентный список map<QAction*,QString> Сообщение отредактировал Алексей1153 - 31.7.2010, 22:23 |
|
|
Текстовая версия | Сейчас: 26.11.2024, 22:56 |