В программе Qt у меня есть класс QWidget
, который является суперклассом другого класса, объявленного так:
class Renderer : public QGLWidget
{
Q_OBJECT
....
}
class A : public Renderer
{ .... }
Теперь у меня есть слот для класса A, которого нет в Renderer
, но когда я пытаюсь запустить программу, она не может установить соединение с классом A:
Object::connect: <sender name: 'push_button'>
Object::connect: <receiver name: 'A'>
Object::connect: No such slot Renderer::loadDialog() in <file path>
Почему он пытается подключиться к Renderer, а не к A? Должен ли я иметь слот в Renderer с тем же именем?
Спасибо
edit:
вот объявление слота в A:
public slots:
void loadDialog();
, а что касается соединений, я полагаюсь на Qt В основном создатель, но вот что было в файле ui_windows.h:
QObject::connect(pushButton, SIGNAL(clicked()), A, SLOT(loadDialog()));
Надеюсь, это немного проясняет ситуацию :)