Как правильно показывать скрытое прозрачное окно при изменении содержимого - PullRequest
0 голосов
/ 31 августа 2010

У меня есть слоистое (полупрозрачное окно), созданное с помощью WS_EX_LAYERED и настроенное с помощью SetLayeredWindowAttributes (... LWA_ALPHA).Я должен время от времени показывать и скрывать его, но со времени последнего скрытия бывают случаи, когда изображение будет существенно изменено.Но SetWindowPos и ​​ShowWindow сначала показывают предыдущее изображение (возможно, буферизованное изображение с прошлого раза), а после этого я вижу перерисовку нового изображения.Каков наилучший способ сделать его недействительным, как будто он будет показан в первый раз (так что нет рисунка предыдущего буферизованного изображения)

Спасибо

Макс

1 Ответ

0 голосов
/ 31 августа 2010

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

Да, вы можете с этим что-то сделать.Многослойное окно позволяет вам контролировать прозрачность.Вы можете начать с bAlpha SetLayeredWindowAttributes () в 0 и изменить его после первого обработанного вами сообщения WM_PAINT.Появление, управляемое таймером, также является довольно распространенным приемом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...