| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > Пропадает модальность окна |
| Автор: xTr1m 25.1.2007, 16:32 | ||||
| Здравствуйте, объясню в кратце проблему: есть обычный диалог (наследованный от CDialog), в нем нет никаких прибамбасов и наворотов. Обычные конторллы, типа CButton CEdit. Диалог создается так
Далее выполняются действия по созданию отчета. Сразу скажу, что происходит взаимодействие с базой данных (данные запршиваются, обрабабытваются и помещаются в отчет). Время от времени создается в потоке диалог с CProgressBar , отражающий на сколько завершена операция запроса. Проблема в следующем: после выполнения создания большого отчета окно перестает быть модальным. Т.е. появляется возможность нажимать на кнопки и пертаскивать формы приложения, которое находиться на заднем фоне. Более того, это главное окно можно закрыть и тогда программа падает =)) (ну это понятно, так как закрывается главное окно, породившее модальный диалог, а сам диалог не закрывается)
такой флаг стоит, проверял. Что делать? Может ли быть проблема в многократном создании потоков (ну скажем теряеся какой-нибудь хэндл или что то еще) Спасибо. Пробовал ставить флаг DS_SYSMODAL , результат тот же =(( |
| Автор: xTr1m 25.1.2007, 19:36 |
| Проблема решена. |