Название: вызов сигнала с параметром Отправлено: yuranich37 от Август 01, 2012, 01:34 допустим, мне нужно связать сигнал QSpinBox::valueChanged(int i) с некоторым моим слотом someSlot().
запись connect (qspinbox, SIGNAL(valueChanged(qspinbox->value())), someclass, SLOT(someSlot())) не работает. когда я меняю значение qspinbox'a программа выводит в терминал, что нет такого сигнала: valueChanged(qspinbox->value()). Как в таком случае нужно связывать сигнал со слотом?? Название: Re: вызов сигнала с параметром Отправлено: sidsukana от Август 01, 2012, 06:46 Сигнал вызывается сам когда произойдет событие (в данном случае вы измените значение спинбокса). Вы должны просто написать слот для приема данных от сигнала.
т.е ваш слот должен иметь вид: Код: void someSlot(int i); Далее в программе делаем связь (указывается только тип параметра, а так же параметры сигнала должны быть идентичны параметрам слота по типу и по количеству): Код: connect (qspinbox, SIGNAL(valueChanged(int)), someclass, SLOT(someSlot(int))); Ну и сама обработка слота: Код: void someSlot(int i) И почитайте на досуге про систему сигналов-слотов. Название: Re: вызов сигнала с параметром Отправлено: mutineer от Август 01, 2012, 10:59 http://doc.crossplatform.ru/qt/4.7.x/signalsandslots.html
Название: Re: вызов сигнала с параметром Отправлено: yuranich37 от Август 01, 2012, 11:42 sidsukana
Большое спасибо, в дальнейшем буду почаще обращаться к документации, сейчас просто иду по книжке Бланшет, Саммерфилд "Qt4. Программирование GUI на С++.2ed" и там, пока, к сожалению, про параметры у слотов и сигналов ничего не было сказано :( Название: Re: вызов сигнала с параметром Отправлено: lighting от Август 01, 2012, 14:19 Бланшет и Саммерфилд, 2-е издание. Описание сигналов и слотов идет на 19 странице.
Название: Re: вызов сигнала с параметром Отправлено: yuranich37 от Август 02, 2012, 11:42 я знаю. я про параметры говорю.
|