В WTL CBitmapButton не поддерживает изображение с прозрачным слоем, например PNG. поэтому я настроил код для использования GDI+ для рисования PNG, назовите его CPNGButton. А вот на win XP дела обстоят странно. Когда кнопка перекрывается другим окном, кнопка сначала получает WM_PAINT, а затем родителя, что приводит к неверному результату.
--->
Проверяю ресурс и убираю атрибут WS_TABSTOP из шаблона кнопки, все нормально, родительское окно получает сначала WM_PAINT, потом кнопку. Что заставляет WS_TABSTOP влиять на порядок рисования окон?