BlinCT30 января 2023 г. 11:57
Обращение к сигналу из qml который реализован в другом потоке
Всем привет.
Сталкнулся вроде и с понятной ошибкой, но не понимаю из аз чего она возникает. А точнее как ее исправить.
QQmlEngine: Illegal attempt to connect to EventHandler(0x5574065eed50) that is in a different thread than the QML engine QQmlApplicationEngine(0x7fff77edfac0.
Ситуация такая, с сервера прилетает пакет в класс EventHandler, определяю и мне надо из пакета взять данные и послать в Dialog инфу.
Реакция в qml реализована вот так
Connections { target: eventHandler function onSignalAlertUserExists() { console.log("user exists"); } }
Самое интересное что если я обращаюсь через eventHandler к слотам в данном классе то все норм. А тут на сигнал при запуске ошибка.
Может кто знает в чем дело?
Спасибо.
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Вам это нравится? Поделитесь в социальных сетях!
Комментарии
Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
Пожалуйста, авторизуйтесь или зарегистрируйтесь
d
- dsfs
- 26 апреля 2024 г. 11:56
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:80баллов,
- Очки рейтинга4
d
- dsfs
- 26 апреля 2024 г. 11:35
C++ - Тест 001. Первая программа и типы данных
- Результат:73баллов,
- Очки рейтинга1
Последние комментарии
Qt Linux - Урок 001. Автозапуск Qt приложения под Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Урок 007. Работаем с ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий Кононенко5 февраля 2024 г. 8:50
EVA25 декабря 2023 г. 17:30
Boost - статическая линковка в CMake проекте под Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
Qt/C++ - Урок 056. Подключение библиотеки Boost в Qt для компиляторов MinGW и MSVC Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Сейчас обсуждают на форуме
Evgenii Legotckoi2 мая 2024 г. 21:07
IscanderChe30 апреля 2024 г. 11:22
Павел Дорофеев14 апреля 2024 г. 9:35
Вернуть старое поведение QComboBox, не менять индекс при resetModel Добрый день! У нас много проектов в которых используется QComboBox, в версии 5.5.1, когда модель испускает сигнал resetModel, currentIndex не менялся. В версии 5.15 при resetModel происходит try…
Хотя есть мысль что я не правильно создаю реакцию на данный сигнал. Но вроде как правильно все.
Если eventHandler создаётся или переносится в другой поток, то лучше добавить какой-нибудь bridge объект, который будет висеть в основном потоке и ретранслировать сигналы из eventHandler в QML
Решение найдено, так как у меня EventHandler был в отдельнмо классе с потоками, то я его в main вынес. И он у меня уже оказался в основнмо потоке. Как мне кажется не совсем элегантное решение но выход найден)