Не подскажите как реализовать перебор QAction элементов QMenu, то есть мне нужно обратиться к QAction через его номер, как ни странно искал в ассисте ничего подходящего нет, хотя почему-то Visual Assist с упорством выдает функцию findActionForId() о которой в ассисте вообще не слова
Заранее спасибо за помощь!
MoPDoBoPoT
10.5.2011, 21:52
Список действий можно получить вызовом метода QWidget::actions(), только не забывай, что разделители тоже имеют тип QAction.
Спасибо за помощь и ответьте пожалуйста еще на один вопрос - у меня есть меню как удалить из него все 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[];
В случае нарушение прав доступа, во втором просто ошибки, не подскажите как правильно
А вообще это правильно удалять массивы и листы так : delete[], а что-то одиночное просто delete
MoPDoBoPoT
11.5.2011, 21:34
Зачем так сложно?)
Цитата(QtAssistant)
void QMenu::clear ()
Removes all the menu's actions. Actions owned by the menu and not shown in any other widget are deleted.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.