Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: daenux от Ноябрь 05, 2010, 12:50



Название: Ссылки на элемент, описанный в другом (подключенном к текущему) модуле
Отправлено: daenux от Ноябрь 05, 2010, 12:50
Здравствуйте, есть вопрос:

Как добавить допустим в QMenu, QAction описанный в другом модуле, каторый в свою очередъ указан в текущем (модуле)...

У меня есть модуль в катором объявлены QAction's, их нужно использовать в несколько других модулях, в модуле где описан QToolBar и в модуле где описан QMenu...

Делаю так:

Код:
#include "refactions.h"
...
menu->addAction(new QAction(&(dynamic_cast<QAction*>(RefActions::action))));
...

В классе RefActions, action объявлен в public...

При этом выдаеться ошибка: error: object missing in reference to ‘RefActions::action’

 ???


Название: Re: Ссылки на элемент, описанный в другом (подключенном к текущему) модуле
Отправлено: daenux от Ноябрь 05, 2010, 17:04
Спасибо, получилось так:

menu->addAction((dynamic_cast<RefAction*>(this->parentWidget()))->action)


Название: Re: Ссылки на элемент, описанный в другом (подключенном к текущему) модуле
Отправлено: kibsoft от Ноябрь 05, 2010, 19:37
Я ничего не понял, но убила эта строка в первом посте:
Код:
menu->addAction(new QAction(&(dynamic_cast<QAction*>(RefActions::action))));
При чем здесь оператор & взятия адреса, если указатель возвращается?