Перебор QAction элементов QMenu |
Здравствуйте, гость ( Вход | Регистрация )
Перебор QAction элементов QMenu |
ruzik |
10.5.2011, 21:17
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: 0 |
Не подскажите как реализовать перебор QAction элементов QMenu, то есть мне нужно обратиться к QAction через его номер, как ни странно искал в ассисте ничего подходящего нет, хотя почему-то Visual Assist с упорством выдает функцию findActionForId() о которой в ассисте вообще не слова
Заранее спасибо за помощь! |
|
|
MoPDoBoPoT |
10.5.2011, 21:52
Сообщение
#2
|
Участник Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: 9 |
Список действий можно получить вызовом метода QWidget::actions(), только не забывай, что разделители тоже имеют тип QAction.
|
|
|
ruzik |
11.5.2011, 8:29
Сообщение
#3
|
Активный участник Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: 0 |
Спасибо за помощь и ответьте пожалуйста еще на один вопрос - у меня есть меню как удалить из него все QAction
Пробовал так: QList<QAction *> actions = menuRecent_projects->actions(); for(int a=0;a<=actions.count();a++) delete actions[a]; Так: QList<QAction *> actions = menuRecent_projects->actions(); delete actions[]; В случае нарушение прав доступа, во втором просто ошибки, не подскажите как правильно |
|
|
ruzik |
11.5.2011, 14:48
Сообщение
#4
|
Активный участник Группа: Участник Сообщений: 254 Регистрация: 23.2.2011 Из: Саратов Пользователь №: 2436 Спасибо сказали: 2 раз(а) Репутация: 0 |
А вообще это правильно удалять массивы и листы так : delete[], а что-то одиночное просто delete
|
|
|
MoPDoBoPoT |
11.5.2011, 21:34
Сообщение
#5
|
Участник Группа: Участник Сообщений: 172 Регистрация: 7.5.2009 Из: Москва Пользователь №: 738 Спасибо сказали: 44 раз(а) Репутация: 9 |
Зачем так сложно?)
Цитата(QtAssistant) void QMenu::clear ()
Removes all the menu's actions. Actions owned by the menu and not shown in any other widget are deleted. |
|
|
Текстовая версия | Сейчас: 27.11.2024, 16:51 |