У меня вопрос - как подключить сигнал базового класса к унаследованному слоту класса. у меня такой код
class A: public QObject
{
Q_OBJECT
public:
A(){}
void EmitSignal()
{
emit(Asignal());
}
signals:
void Asignal();
};
class B: public A
{
public:
B();
public slots:
void Bslot()
{
//dosmth
}
};
B::B()
{
connect(this, SIGNAL(Asignal()), this, SLOT(Bslot()));
}
int main(int argc, char *argv[])
{
B Bobject;
B.EmitSignal();
}
и когда я вызываю B.EmitSignal()
, я полагаю, что был вызван Bslot()
, но я получил сообщение в окне вывода
QObject::connect: Нет такого слота A::Bslot().
Как я могу добиться Bslot()
исполнения?