crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> наследование с Q_OBJECT
quarz
  опции профиля:
сообщение 17.12.2009, 0:14
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 49
Регистрация: 3.11.2009
Пользователь №: 1202

Спасибо сказали: 5 раз(а)




Репутация:   0  


Свой класс наследую от класса без Q_OBJECT.
В своем классе определяю Q_OBJECT и пытаюсь вещать сигналы. Получаю следующие ошибки:
Раскрывающийся текст

1>Compiling...
1>graphscaledraw.cpp
1>Compiling...
1>moc_graphscaledraw.cpp
1>.\GeneratedFiles\debug - usermode\moc_graphscaledraw.cpp(42) : error C2039: 'staticMetaObject' : is not a member of 'QwtScaleDraw'
1> C:\qwt-5.2.0\src\qwt_scale_draw.h(30) : see declaration of 'QwtScaleDraw'
1>.\GeneratedFiles\debug - usermode\moc_graphscaledraw.cpp(56) : error C2039: 'qt_metacast' : is not a member of 'QwtScaleDraw'
1> C:\qwt-5.2.0\src\qwt_scale_draw.h(30) : see declaration of 'QwtScaleDraw'
1>.\GeneratedFiles\debug - usermode\moc_graphscaledraw.cpp(61) : error C2039: 'qt_metacall' : is not a member of 'QwtScaleDraw'
1> C:\qwt-5.2.0\src\qwt_scale_draw.h(30) : see declaration of 'QwtScaleDraw'
1>.\GeneratedFiles\debug - usermode\moc_graphscaledraw.cpp(77) : error C2665: 'QMetaObject::activate' : none of the 4 overloads could convert all the argument types
1> c:\qt\4.5.0\include\qtcore\../../src/corelib/kernel/qobjectdefs.h(334): could be 'void QMetaObject::activate(QObject *,int,int,void **)'
1> c:\qt\4.5.0\include\qtcore\../../src/corelib/kernel/qobjectdefs.h(335): or 'void QMetaObject::activate(QObject *,const QMetaObject *,int,void **)'
1> while trying to match the argument list '(DivScaleDraw *const , const QMetaObject *, int, int)'
1>Build log was saved at "file://d:\Исходники\Работа\XIDC\XILab\debug - usermode\BuildLog.htm"
1>XILab - 4 error(s), 0 warning(s)


Вот код:
class DivScaleDraw: public QwtScaleDraw
{
    Q_OBJECT
public:
        .....
signals:
    void firstScaleChanged();
}.


Как я понял компилятор возмущается что в классе-родителе (QwtScaleDraw) нет Q_OBJECT и следовательно в нем нет 'staticMetaObject', 'qt_metacast', и т.д. Если все так, проблема имеет решение?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.3.2024, 16:29