Russian Qt Forum

Qt => Вопросы новичков => Тема начата: injectres от Июль 31, 2011, 18:27



Название: проблема со слотами
Отправлено: injectres от Июль 31, 2011, 18:27
Добрый день, у меня есть такой вопрос:
У меня есть класс GLWidget, унаследованный от QGLWidget, в этом классе я описываю слот Slot_test(), на форме есть widget, преобразованный в GLWidget, с помощью пункта меню "изменить сигналы и слоты" я добавил слот Slot_test. С помощью редактора сигналов и слотов добавил следующую связку: pushbutton отправляет сигнал clicked() его принимает  widget и обрабатывается слотом Slot_test при выполнении программы я получаю ошибку:

Object::connect: No such slot QGLWidget::Slot_test() in ./ui_mainwindow.h:99
Object::connect:  (sender name:   'pushButton')
Object::connect:  (receiver name: 'widget')

99 строка ui_mainwindow.h такая:
QObject::connect(pushButton, SIGNAL(clicked()), widget, SLOT(Slot_test()));

При наведении на Slot _test в 99 строке вылезает подсказка, что он из GLWidget, но почему вылезает ошибка? И как ее избежать?


Название: Re: проблема со слотами
Отправлено: kambala от Июль 31, 2011, 18:47
а Slot_test() описан в разделе слотов в классе GLWidget?


Название: Re: проблема со слотами
Отправлено: injectres от Июль 31, 2011, 20:32
а Slot_test() описан в разделе слотов в классе GLWidget?
Да, конечно, описан, даже когда ручками пытаешься вызвать connect, когда указываю последний параметр SLOT( ) автоподстановка предлагает Slot_test()


Название: Re: проблема со слотами
Отправлено: LisandreL от Июль 31, 2011, 20:46
Object::connect: No such slot QGLWidget::Slot_test() in ./ui_mainwindow.h:99

Не GLWidget, а QGLWidget - ищите ошибку тут.


Название: Re: проблема со слотами
Отправлено: injectres от Июль 31, 2011, 20:57
Object::connect: No such slot QGLWidget::Slot_test() in ./ui_mainwindow.h:99

Не GLWidget, а QGLWidget - ищите ошибку тут.
Эмм... так собственно это по сути и есть мой вопрос, я не вижу логического объяснения данной ситуации. Ведь третьим параметром я указываю указатель на объект типа GLWidget.


Название: Re: проблема со слотами
Отправлено: injectres от Июль 31, 2011, 21:32
Решил проблему сам, спасибо тем, кто пытался помочь. Проблема решалась банально, в GLWidget.h не было прописано Q_OBJECT