Название: Вывод модального диалога из сценария, выполняющегося в другом потоке Отправлено: Mike-Aiki от Июль 18, 2013, 12:16 Дано: сценарий выполняется в вспомогательном потоке, по ходу выполнения сценария нужно выводить модальные диалоги (ввод данных, подтверждение чего-либо, просто информационные), соответственно, с приостановкой работы сценария.
И что-то заклинило меня - как это сделать, с учётом того, что окно диалога (GUI) можно выводить только в основном потоке? Название: Re: Вывод модального диалога из сценария, выполняющегося в другом потоке Отправлено: Kurles от Июль 18, 2013, 12:43 Код Если я правильно понял задачу, то примерно вот так. mainThreadObject - объект, с которого нужно получить данные, showDialogAndRetValue - слот в объекте mainThreadObject, который сформирует, выведет диалог и вернет введенные данные, retVal - возвращаемое значение и inputVal - входящий параметр для функции int mainThreadObject->showDialogAndRetValue(int). Название: Re: Вывод модального диалога из сценария, выполняющегося в другом потоке Отправлено: Mike-Aiki от Июль 18, 2013, 13:53 Ага, спасибо за флаг Qt::BlockingQueuedConnection ! :) Для проверки без возврата параметров попробовал просто connect() с этим флагом - окно вызывается, сценарий ждёт. Спасибо ещё раз!
|