![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
pelican |
![]() ![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 15 Регистрация: 31.8.2009 Из: Россия, г. Кострома. Пользователь №: 1038 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Привет всем! Собственно, вопрос в заголовке...
Я пытался вызвать connect() в конструкторе класса главного окна. Сам класс потока объявлен в отдельном заголовке.
Проект компилируется, запускается, но connect() не срабатывает и консоль выводит:
В потоковой функции run(), только функция exec() (извините за тавтологию). Подозреваю, что connect() лучше вызвать в run(). Но, чтобы не "лепить", решил спросить. |
|
|
kwisp |
![]()
Сообщение
#2
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
pelican,
по-моему библиотека говорит тебе что нет может слот найти. причем тут в каком месте ты соединяешь сигнал со слотом. Шлее пишет что можно соединять где хочешь.(зачеркнуто, я этого не говрил. ![]() Сообщение отредактировал kwisp - 31.8.2009, 16:34 |
|
|
pelican |
![]()
Сообщение
#3
|
Студент ![]() Группа: Участник Сообщений: 15 Регистрация: 31.8.2009 Из: Россия, г. Кострома. Пользователь №: 1038 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата по-моему библиотека говорит тебе что нет может слот найти. причем тут в каком месте ты соединяешь сигнал со слотом. Шлее пишет что можно соединять где хочешь. Да, это я понял, но слот есть! Только в файле класса потока "addthread.cpp". Почему слот ищется в "mainwindow.cpp"? |
|
|
kwisp |
![]()
Сообщение
#4
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
pelican |
![]()
Сообщение
#5
|
Студент ![]() Группа: Участник Сообщений: 15 Регистрация: 31.8.2009 Из: Россия, г. Кострома. Пользователь №: 1038 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата вот ![]() Ладно, сам лопатить буду. ![]() |
|
|
Litkevich Yuriy |
![]()
Сообщение
#6
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
pelican |
![]() ![]()
Сообщение
#7
|
Студент ![]() Группа: Участник Сообщений: 15 Регистрация: 31.8.2009 Из: Россия, г. Кострома. Пользователь №: 1038 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Object::connect: No such slot QThread::add() in .\mainwindow.cpp:28 по моему выделенное более интересноВкурил доки - добавил Q_OBJECT в определение класса потока, подтесал ещё кое-что по мелочам. И всё заработало! ![]() |
|
|
gigabyte |
![]()
Сообщение
#8
|
Студент ![]() Группа: Участник Сообщений: 20 Регистрация: 9.8.2009 Пользователь №: 992 Спасибо сказали: 2 раз(а) Репутация: ![]() ![]() ![]() |
Object::connect: No such slot QThread::add() in .\mainwindow.cpp:28 по моему выделенное более интересноВкурил доки - добавил Q_OBJECT в определение класса потока, подтесал ещё кое-что по мелочам. И всё заработало! ![]() В идеале результат можно было бы выставить сюда в виде заголовка класса, чтоб те у кого появится эта проблема в дальнейшем видели решение, а не по новой плодили подобные темы |
|
|
pelican |
![]()
Сообщение
#9
|
Студент ![]() Группа: Участник Сообщений: 15 Регистрация: 31.8.2009 Из: Россия, г. Кострома. Пользователь №: 1038 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
В идеале результат можно было бы выставить сюда в виде заголовка класса, чтоб те у кого появится эта проблема в дальнейшем видели решение, а не по новой плодили подобные темы
|
|
|
reich |
![]()
Сообщение
#10
|
Студент ![]() Группа: Новичок Сообщений: 10 Регистрация: 31.7.2009 Пользователь №: 966 Спасибо сказали: 1 раз(а) Репутация: ![]() ![]() ![]() |
Без определения макроса Q_OBJECT в классе не будут доступны ключевые слова Qt типа signals, slots, emit и т.п. Потому, не забывайте определять Q_OBJECT в том классе, в котором хотите использовать сигналы/слоты
|
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 28.2.2025, 8:43 |