crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Не могу понять как работает сигнал!
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Litkevich Yuriy Дата 25.2.2011, 6:38
 
Цитата(Roston @ 16.2.2011, 21:09) *
Но реализации сигналов дальше нету.
реализацией сигналов занимается "метаобъектный компилятор", он генерирует файл С++, который имеет расширение *.moc
В приведённом примере есть файл - cannonfield.h.
Если этот файл указан в pro-файле в списке HEADERS, то для него будет вызван метаобъектный компилятор (moc). Который сгенерирует из него исходник moc_cannonfield.cpp, в этом исходнике будет реализация сигналов и ещё некоторых метаобъектных штучек. Ну и файл moc_cannonfield.cpp, разумеется будет добавлен в процесс компиляции.
Obey-Kun Дата 25.2.2011, 3:57
  Почитай Шлее. Он есть на http://obey.su/books. Но лучше купи в магазине.
Он там про сигналы отлично написал.
kwisp Дата 16.2.2011, 20:21
 
Цитата(Roston @ 16.2.2011, 20:17) *
Тоесть если взять emit angleChanged(currentAngle); то дальше в слот будет передаваться параметр currentAngle?

да
Roston Дата 16.2.2011, 20:17
  Тоесть если взять emit angleChanged(currentAngle); то дальше в слот будет передаваться параметр currentAngle?
kwisp Дата 16.2.2011, 19:15
  в коде, который ты привел - устанавливается соединение.
а реально вызывается сигнал в строчке :
emit valueChanged(/*тут реальное значение которое передаётся в слот*/);
Roston Дата 16.2.2011, 19:09
  Здравствуйте. В этом уроке http://www.doc.crossplatform.ru/qt/4.4.3/t...torial-t10.html мы объявляем в классе CannonField сигналы forceChanged и angleChanged.
Но реализации сигналов дальше нету. Подскажите пожалуйста как тогда в этом коде
 connect(force, SIGNAL(valueChanged(int)),
             cannonField, SLOT(setForce(int)));


мы знаем какое значение передается в setForce. Не могу до конца понять!
Наперед спасибо!
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 21:02