перерисовка окон
От: CShark  
Дата: 07.06.01 06:09
Оценка:
Здравствуйте !

Вопрос наверняка ламерский, но всё же

Если в главном окне создать несколько дочерних, затем динамически изменять размеры главного окна (мышкой за правый нижний угол), то из-за перерисовки главного окна будут "мигать" дочерние...
Подскажите пожалуйста чем это лечиться ...

А лучше всего примерчик кода для Win32 без использования MFC
Re: перерисовка окон
От: Willi  
Дата: 07.06.01 07:10
Оценка:
Здравствуйте CShark, вы писали:


CS> Здравствуйте !


CS> Вопрос наверняка ламерский, но всё же


CS> Если в главном окне создать несколько дочерних, затем динамически изменять размеры главного окна (мышкой за правый нижний угол), то из-за перерисовки главного окна будут "мигать" дочерние...

CS> Подскажите пожалуйста чем это лечиться ...

попробуй поставить "главному" окну стиль WS_CLIPCHILDREN
\/\/i||i
Re: перерисовка окон
От: VladD2 Российская Империя www.nemerle.org
Дата: 07.06.01 18:38
Оценка:
Здравствуйте CShark, вы писали:


CS> Здравствуйте !


CS> Вопрос наверняка ламерский, но всё же


CS> Если в главном окне создать несколько дочерних, затем динамически изменять размеры главного окна (мышкой за правый нижний угол), то из-за перерисовки главного окна будут "мигать" дочерние...

CS> Подскажите пожалуйста чем это лечиться ...

CS> А лучше всего примерчик кода для Win32 без использования MFC


MFC не по теме, да и ни причем сдесь они. В WinAPI есть функции пакетного передвижения окон (см. MSDN). Так же можно попробывать заставить отрисовываться дочернии окна в Mem-DC, и выводить изображени главного окна одним залпом.

Если изображение маргает, то это может быть из-за того что дочернии и/или главное окно вызывают WM_ERASEBACKGRND (или как его там). При этом, для чистой отрисовки нужно или перебить все эрэйсы или опять же рисовать в МэмДиСи.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.