Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: kolob от Декабрь 22, 2010, 19:28



Название: Задержка QProgressDialog
Отправлено: kolob от Декабрь 22, 2010, 19:28
Добрый вечер. Собственно вопрос содержится в теме. Как можно реалиловать задержку в QProgressDialog, после того как процесс закончился.


Название: Re: Задержка QProgressDialog
Отправлено: alexman от Декабрь 22, 2010, 19:48
Так не завершайте  его сразу! Закрывайте через некоторое время, то есть можно отсылать в диалог из потока значения <= maximum() - 1, а когда поток завершится можно сделать задержку. Что-нибудь типа:
Код:
QTimer::singleShot( msc, dlg, SLOT( close() ) );

Если я конечно правильно понял о чем речь :)


Название: Re: Задержка QProgressDialog
Отправлено: kolob от Декабрь 22, 2010, 19:56
Я его не закрываю. Диалог без кнопки. Когда н достигает максимума, он закрывается, при этом он не показывает 100% завершение работы.


Название: Re: Задержка QProgressDialog
Отправлено: shirushizo от Декабрь 22, 2010, 20:02
Переопределить closeEvent() или убрать autoClose и проверять состояние операции по таймеру, и уже тогда закрывать руками.