Qt: Обновления могут быть запланированы только из потока GUI или из QQuickItem :: updatePaintNode

Как можно позвонить update() на QQuickItem из рабочего потока, не вызывая следующее предупреждение?

Updates can only be scheduled from GUI thread or from QQuickItem::updatePaintNode()

Я хочу обеспечить QQuickItem::updatePaintNode() выполнить.

Я пробовал решение зацепить QObject::connect из рабочего потока в слот, который вызывает MyQQuickItem->update(), Все работает нормально, хотя. QQuickItem::updatePaintNode() вызывается после сигнала & QQuickItem обновляется как я хочу. Но я получаю это предупреждение при каждом обновлении, которое я планирую Я так понимаю, вы не можете обновить пользовательский интерфейс из рабочего потока. Но как это сделать без предупреждения в Qt?

НО, как я могу избавиться от предупреждения, которое я получаю при каждом вызове обновления?

Замечания: Я должен был сделать QObject::connect с Qt::DirectConnection с Qt::QueuedConnection не сработало для вызова update через сигнал.

Проверено через это обсуждение здесь. Обсуждение в этой ссылке заканчивается жалобой на то же предупреждение, которое я получаю здесь. Мой вопрос: что я должен исправить, чтобы избежать этого предупреждения?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]