Итак, в моем приложении есть несколько WinAPI и несколько настраиваемых элементов управления. Ура...
Теперь, как правило, они просто незаметно перерисовывают себя для анимации, изменения состояния и т. Д., И все это работает нормально.
Но у меня есть метод класса Window под названием fix (). Это вызывается всякий раз, когда необходимо обновить все окно. Он изменяет размеры элементов управления и делает окно недействительным.
Когда это происходит, рисуется фон, затем вкладка, а затем все остальные сверху. Это вызывает очень раздражающее мигание, особенно при изменении размера окна (из-за постоянных вызовов fix ()).
Что я пробовал:
- WS_EX_COMPOSITED. Это только двойная буферизация отдельных элементов управления. Это улучшение, но мерцание неизбежно остается.
- Отключение отрисовки фона. Вряд ли решает проблему, а на самом деле только усугубляет ситуацию.
Итак: мне нужна техника / метод / что угодно, чтобы позволить мне полностью выполнить двойную буферизацию окна. Я подумал, что обработка сообщения WM_PAINT сама по себе может быть решением, но я не знал, с чего начать. У меня ужасное предчувствие, что это даже невозможно ...
Пожалуйста, помогите, это критическая проблема. Я буду очень рад, когда эта дурацкая проблема будет исправлена.