• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Как сделать, чтобы модальное окно закрылось по условию?

  • Автор темы DrMcSheen
  • Дата начала
D

DrMcSheen

Предполагается модальное диалоговое окно ProgressSave с прогресс баром и кнопкой ОК.
Надо чтобы по завершении прогресса окно само закрылось и передало управление основной программе. Прогресс ещё не создавал, это потом. Главное - отрепетировать закрывание окна.
В качестве эксперимента использую цикл for.
Такой код вызывает ошибку. вот эту:
(окно уже открыто, код из него. Пробовал всё, что закомментировано)

Код:
CProgressSave::CProgressSave(CWnd* pParent /*=NULL*/) 
: CDialog(CProgressSave::IDD, pParent) 
{ 
int i; 
for (i=0;i<10000000;i++); 
OnOK(); 
//CWnd::CloseWindow(); 
//ExitProcess; 
//Exit; 
//::exit; 
//EndDialog(IDOK); 
}

Как поступить?
 
G

grigsoft

Посмотреть на codeproject реализации прогрессов. В конструкторе класса окна самого окна еще нет, так что и закрывать нечего. И прежде чем "отрепетировать закрывание окна", стоит спланировать кто и где будет делать долгую операцию.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!