Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Flakes от Октябрь 24, 2009, 23:28



Название: Перечислить все экшены приложения
Отправлено: Flakes от Октябрь 24, 2009, 23:28
Нашел примерчик из Qt3 http://doc.trolltech.com/qq/qq14-actioneditor.html. В принципе пытаюсь сделать тоже самое на Qt4.
Что меня заинтересовало, это что оказывается можно или можно было получить список всех экшенов приложения:

Код:
    QObjectList *actions = queryList("QAction");
    QAction *action = static_cast<QAction*>(actions->first());
    while (action) {
        ...     
        action = static_cast<QAction*>(actions->next());
    }

Я не нашел аналога queryList("QAction") в 4ке.


Название: Re: Перечислить все экшены приложения
Отправлено: BRE от Октябрь 24, 2009, 23:36
Попробуй так:
Код
C++ (Qt)
void Widget::method()
{
   QList<QAction*> allActions = findChildren<QAction*>();
}
 


Название: Re: Перечислить все экшены приложения
Отправлено: Flakes от Октябрь 25, 2009, 00:26
Вот спасибо!