Re[2]: Создание QDialog из дочернего потока
От: _niko_ Россия  
Дата: 28.04.13 21:51
Оценка:
Здравствуйте, SaZ, Вы писали:

SaZ>Здравствуйте, Iya, Вы писали:


Iya>>Необходимо из потока типа QThread вызвать диалог QDialog с кнопкой, при вызове которого необходимо приостановить работу этого же потока, а после нажатии на кнопку закрыть диалог и возобновить работу потока. Проще говоря, реализовать вызов метода Пауза для рабочего потока.

Iya>>Очень нужна помощь. Окончательно запуталась, когда и из какого потока (GUI или дочернего) вызываются сигналы и слоты.
Iya>>Спасибо.

SaZ>В GUI потоке делаете слот, который показывает ваш диалог.

SaZ>В рабочем потоке объявляете сигнал.
SaZ>Соединяете сигнал и слот с типом соединения Qt::BlockingQueuedConnection
SaZ>В рабочем потоке делаете emit ваш сигнал
SaZ>Всё.

. . . а ожидание закрытия диалога реализовать через QEventLoop, где соединение сигнала диалога со слотом QEventLoop::quit соединить с тем же типом Qt::BlockingQueuedConnection.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.