Russian Qt Forum

Qt => ActiveX => Тема начата: smallmazila от Июнь 21, 2010, 11:19



Название: Наследование QAxObject
Отправлено: smallmazila от Июнь 21, 2010, 11:19
Приветствую!
В программе использую свой класс на основе QT класса QAxObject.
Соотвественно пишу:
Код:
class SMKAxObject : public QAxObject
{
    Q_OBJECT
public:
    SMKAxObject();
    ~SMKAxObject();

public slots:
    void onException(int, QString, QString, QString);

signals:
    void SMKAxException(int, QString, QString, QString, QAxObject*);
};

При компиляции выдает следующую ошибку:

\generatedfiles\debug\moc_ACADDispatcher.cpp(49) : error C2248: 'QAxObject::staticMetaObject' : cannot access private member declared in class 'QAxObject'
1>        d:\qt\462\include\activeqt\../../src/activeqt/container/qaxobject.h(76) : see declaration of 'QAxObject::staticMetaObject'
1>        d:\qt\462\include\activeqt\../../src/activeqt/container/qaxobject.h(54) : see declaration of 'QAxObject'


Подскажите как решить проблему.


Название: Re: Наследование QAxObject
Отправлено: BRE от Июнь 21, 2010, 11:29
Подскажите как решить проблему.
Почитать документацию...
Цитировать
Warning: You can subclass QAxObject, but you cannot use the Q_OBJECT macro in the subclass (the generated moc-file will not compile), so you cannot add further signals, slots or properties. This limitation is due to the metaobject information generated in runtime. To work around this problem, aggregate the QAxObject as a member of the QObject subclass.


Название: Re: Наследование QAxObject
Отправлено: smallmazila от Июнь 21, 2010, 11:32
 :) Спасибо!