Мне необходимо отобразить диалог, в котором будет выведена информация "Подождите, идет обновление конфигурации...".
Я создаю немодальный диалог, который отображаю во время длительной процедуры обновления.
Но этот диалог корректно не обновляется и его нельзя ни передвинуть и в нем текст может частично затереться.
Что можно сдлелать?
Здравствуйте, kondrik, Вы писали:
K>Мне необходимо отобразить диалог, в котором будет выведена информация "Подождите, идет обновление конфигурации...".
K>Я создаю немодальный диалог, который отображаю во время длительной процедуры обновления.
K>Но этот диалог корректно не обновляется и его нельзя ни передвинуть и в нем текст может частично затереться.
Что значит "диалог корректно не обновляется"
Какой текст? (выводимый в ресурсах или обновляемый динамический)...
K>Что можно сдлелать?
...подробнее и содержательнее изложить суть проблемы...
Здравствуйте, AlexGin, Вы писали:
AG>Здравствуйте, kondrik, Вы писали:
K>>Мне необходимо отобразить диалог, в котором будет выведена информация "Подождите, идет обновление конфигурации...".
K>>Я создаю немодальный диалог, который отображаю во время длительной процедуры обновления.
K>>Но этот диалог корректно не обновляется и его нельзя ни передвинуть и в нем текст может частично затереться.
AG>Что значит "диалог корректно не обновляется"
AG>Какой текст? (выводимый в ресурсах или обновляемый динамический)...
K>>Что можно сдлелать?
AG>...подробнее и содержательнее изложить суть проблемы...
Отображаю обычный статический текст и статическую иконку.
Если я отображаю немодальный диалог и при этом основное приложение, которое его вызывает не сильно загруженно, то этот диалог корректно отображается.
Если основное приложение сильно загружено, то мой немодальный диалог не могу ни передвинуть и если какое-т оокно его закроет, то оно не перерисуется, пока не закончит выполняться длительная процедура в моем основном приложении.
Как понимаю — немодальный диалог не получает сообщения обновления окна?
Видел, что нужно обрабатывать как-то сообщения PeekMessage, но не могу понять как. Также как второй вариант — думаю в отдельном потоке реализовать диалог, но очень не хотелось GUI на отдельный поток завязывать.
Смысл всего этого — отобразить во время выполнения длительной процедуры диалог, который бы не затирался другими окнами и, чтобы этот диалог можно было передвинуть.
Здравствуйте, kondrik, Вы писали:
K>Что можно сдлелать?
Сходить на codeproject, конечно же.
Здравствуйте, Hawk, Вы писали:
H>Здравствуйте, kondrik, Вы писали:
K>>Что можно сдлелать?
H>Сходить на codeproject, конечно же.
Спасибо. На этом примере очень хорошо видна правильная методика.
On 12.02.2014 17:37, kondrik wrote:
> Мне необходимо отобразить диалог, в котором будет выведена информация
> "Подождите, идет обновление конфигурации...".
> Я создаю немодальный диалог, который отображаю во время длительной
> процедуры обновления.
> Но этот диалог корректно не обновляется и его нельзя ни передвинуть и в
> нем текст может частично затереться.
> Что можно сдлелать?
Запустить цикл обработки сообщений.
При этом "длительная процедура обновления" должна работать либо в
фоновом потоке, либо должна быть дискретизирована и выполняться кусками
по таймеру или посылаемому самому себе сообщению.
Posted via RSDN NNTP Server 2.1 beta