在 WTL 中,CBitmapButton 不支持带有透明层的图片,例如 PNG。所以我自定义代码以使用 GDI+ 绘制 PNG,将其命名为 CPNGButton。但是在win XP上事情很奇怪。当按钮被其他窗口重叠时,按钮先接收 WM_PAINT,然后再接收父级,导致结果不正确。
--->
我检查资源并从按钮的模板中删除 WS_TABSTOP 属性,一切正常,父窗口首先接收 WM_PAINT,然后是按钮。是什么导致 WS_TABSTOP 影响窗口绘制顺序?
在 WTL 中,CBitmapButton 不支持带有透明层的图片,例如 PNG。所以我自定义代码以使用 GDI+ 绘制 PNG,将其命名为 CPNGButton。但是在win XP上事情很奇怪。当按钮被其他窗口重叠时,按钮先接收 WM_PAINT,然后再接收父级,导致结果不正确。
--->
我检查资源并从按钮的模板中删除 WS_TABSTOP 属性,一切正常,父窗口首先接收 WM_PAINT,然后是按钮。是什么导致 WS_TABSTOP 影响窗口绘制顺序?