LINUX.ORG.RU

QT - Сигналы и слоты - как связать

 ,


0

1

Доброго времени суток! У меня есть основной класс диалога и в нем еще дочерний. Идея в том, что при нажатии на кнопку ОК в дочернем диалоге должен посылатся сигнал, который бы обработал основной. Я сделал сигналы и слоты и теперь пытаюсь связать в конструкторе главного дилаога

 QObject::connect(dlgEditTransport, SIGNAL(changeTransport(int, QString , QString , QString )), this, SLOT(changeTransport(int, QString , QString , QString )));

Но вот, что выдает: ..\kurs2\dialog.cpp:14:163: error: no matching function for call to 'Dialog::connect(DialogEditTransport&, const char*, Dialog* const, const char*)'

И еще вопрос - а можно ли без сигналов-слотов узнать, что в дочернем диалоге произошло событие Accepted()?



Последнее исправление: gwyllum (всего исправлений: 1)

И еще вопрос - а можно ли без сигналов-слотов узнать, что в дочернем диалоге произошло событие Accepted()?

if (myDialog->exec() == QDialog::Accepted) {...
UVV ★★★★★
()

Но вот, что выдает: ..\kurs2\dialog.cpp:14:163: error: no matching function for call to 'Dialog::connect(DialogEditTransport&, const char*, Dialog* const, const char*)'

Без исходников сложно сказать, что ты там наворотил...

UVV ★★★★★
()

QObject::connect(dlgEditTransport,

->

QObject::connect(&dlgEditTransport,

По указателю нужно.

а можно ли без сигналов-слотов узнать, что в дочернем диалоге произошло событие Accepted()?

exec()?

schizoid ★★★
()

Используй connect qt5, он более надежный

seftoner
()
Ответ на: комментарий от schizoid

Плюсую этого господина. Компилятор же все написал, читать кто будет?

solovey ★★
()
Ответ на: комментарий от schizoid

Спасибо огромное, проблема решена.

gwyllum
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.