Стратегия создания гибкого дочернего окна
Я пытаюсь создать класс окна, который поддерживает постепенное появление и исчезновение даже для дочерних окон. В основном он добавляет
WS_EX_LAYERED
стиль к окну, а затем он вызывает
SetLayeredWindowAttributes
по таймеру, постепенно меняя значение альфа.
Такой подход допустим, но, конечно, затухание будет временно прервано, если через очередь сообщений потока проходят сообщения с более высоким приоритетом. Так, например, если где-то происходит какое-то событие изменения размера, затухание замедлится или временно остановится.
Мне интересно, есть ли стратегия как-то избежать этого. Пока что мое единственное решение - создать красивое окно в отдельном потоке, чтобы сообщения таймера ничем не прерывались. Это решение возможно, но оно добавляет некоторую дополнительную сложность потоковой передачи, поэтому я надеялся избежать его, если это возможно. Спасибо за любой вклад.