Название: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 14:11 Добрый день. Создал дочерний класс от QMainwindow(который рисует форму), в нем написал макрос Q_OBJECT, но слоты не реагируют на сигналы.В чем может быть дело?Спасибо
Название: Re: Сигнал в дочернем классе Отправлено: demaker от Июнь 18, 2013, 14:13 Код, можно посмотреть
Название: Re: Сигнал в дочернем классе Отправлено: mutineer от Июнь 18, 2013, 14:24 Дело в неправильном коде
Название: Re: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 14:24 вот проект...
Название: Re: Сигнал в дочернем классе Отправлено: mutineer от Июнь 18, 2013, 14:30 и что не работает?
Название: Re: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 14:31 Слот таймера,кнопок...
Название: Re: Сигнал в дочернем классе Отправлено: mutineer от Июнь 18, 2013, 14:32 Я вижу только одного наследника QMainWindow и у него нету слота для таймера. Скажи человеческим языком что у тебя не вызывается
Название: Re: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 14:35 ну я нажиаю кнопку, по ней отрисовывается график,спинбокс,лсд, и две кнопки...совственно слот таймера не работает, слоты кнопок тоже...
Название: Re: Сигнал в дочернем классе Отправлено: mutineer от Июнь 18, 2013, 14:37 Код: void timeoutFifo(); Эти слоты? они не работают потому что объект уже уничтожен Название: Re: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 14:41 Ох ты...когда то я с этим сталкивался, выходя из функции кноки на главной форме объект уничтожается...
Название: Re: Сигнал в дочернем классе Отправлено: mutineer от Июнь 18, 2013, 14:45 Это называется "время жизни объектов в С++"
Название: Re: Сигнал в дочернем классе Отправлено: demaker от Июнь 18, 2013, 14:49 Код:
Сделай oscillo глобальной переменной для MainWindow. Код: oscillo = new Oscillograph(...this); Название: Re: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 15:14 Спасибо, только осталось одно но: когда пишу в mainwindow.h Oscillograph *oscillo; выдает запрещение декларации без типа
Название: Re: Сигнал в дочернем классе Отправлено: mutineer от Июнь 18, 2013, 15:17 include забыл, небось
Название: Re: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 15:20 не, в mainwindow.h есть #include oscillograph.h...
Название: Re: Сигнал в дочернем классе Отправлено: mutineer от Июнь 18, 2013, 15:27 его нельзя туда инклудить из-за твоей лапши с инклудами
Код: #include <QDesktopWidget> Зачем это все в mainwindow.h и зачем инклудить mainwindow.h в oscillograph.h? Название: Re: Сигнал в дочернем классе Отправлено: demaker от Июнь 18, 2013, 15:28 Напиши, код как объявляешь
Название: Re: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 15:36 его нельзя туда инклудить из-за твоей лапши с инклудами Код: #include <QDesktopWidget> Зачем это все в mainwindow.h и зачем инклудить mainwindow.h в oscillograph.h? Цитировать Зачем это все в mainwindow.h это осталось от старых времен...Цитировать и зачем инклудить mainwindow.h в oscillograph.h? а это проблема в ДНК...спасибо за помощь, очень помгли... Название: Re: Сигнал в дочернем классе Отправлено: Edynchik от Июнь 18, 2013, 15:36 |