Название: проблема с реализацией сигнала слота Отправлено: MuLLIKA от Октябрь 16, 2010, 14:26 Компилятор выдает такую ошибку:
QObject::connect: Incompatible sender/receiver arguments SceneExm::ChangeArrayCollids(graphitemclass*,graphitemclass*,Mode&) --> mainW::AddArrayCollidsElements(graphitemclass*,graphitemclass*,SceneExm::Mode&) я не правильно передаю параметры в слот, видимо....но не могу разобраться как нужно правильно это сделать! сигнал ChangeArrayCollids вызываеться в классе SceneExm, а слот реализуеться в классе mainW::AddArrayCollidsElements class SceneExm enum Mode{} Mode описываеться в классе SceneExm. Зарание спасибо! Название: Re: проблема с реализацией сигнала слота Отправлено: merke от Октябрь 16, 2010, 14:50 В каком классе производится связка?
Да ты прав ошибка в несовместимости аргументов приемника-отправителя! Попробуй enum Mode{} определить и там и там! Название: Re: проблема с реализацией сигнала слота Отправлено: crossly от Октябрь 16, 2010, 15:05 а метаобъектная система знает о вашем enum??
Название: Re: проблема с реализацией сигнала слота Отправлено: MuLLIKA от Октябрь 17, 2010, 23:00 в классе SceneExm происходит связка.
crossly, а как это определить? ошибок линковки небыло! Название: Re: проблема с реализацией сигнала слота Отправлено: crossly от Октябрь 18, 2010, 12:07 а ошибок и не должно было быть.... Q_ENUM
Название: Re: проблема с реализацией сигнала слота Отправлено: MuLLIKA от Октябрь 18, 2010, 14:10 Q_ENUM
нужно указать в заголовках обоих классов? получилось сделать прописав в обоих классах enum Mode {} Спасибо! Название: Re: проблема с реализацией сигнала слота Отправлено: crossly от Октябрь 18, 2010, 16:03 объявлять в обеих классах не самое красивое решение...
Название: Re: проблема с реализацией сигнала слота Отправлено: merke от Октябрь 18, 2010, 16:48 Ну а как тогда второй объект будет знать о существовании данного енума? если его напрямую не объявить в обоих классах?
Название: Re: проблема с реализацией сигнала слота Отправлено: crossly от Октябрь 18, 2010, 19:43 объявить в отдельном хидере.... к примеру globals.h.... и подключить к обеим...
|