静态控制不透明+MFC
Posted
技术标签:
【中文标题】静态控制不透明+MFC【英文标题】:Static control is not transparent +MFC 【发布时间】:2009-05-15 19:21:58 【问题描述】:我们已经创建了一个工具栏。工具栏上有一个静态控件,我们在该静态控件上放置了 ab 图标图像。问题是静态控件有自己的颜色,我们无法使其相对于浏览器主题颜色透明。
所以当浏览器主题改变时,我们的图标看起来有一些背景颜色。
【问题讨论】:
“浏览器主题”是什么意思?网络浏览器中的主题?浏览器主题与 MFC 工具栏有何关系?活动X?你是说 Window 的主题吗? 【参考方案1】:您是否考虑过在绘制静态控件时查看工具栏中的覆盖 WM_CTLCOLOR 以返回 NULL_BRUSH?
【讨论】:
【参考方案2】:派生出您自己的所有者绘制的静态控件,并使用加载到 CImage 中的 PNG 来为您提供每像素 alpha。
无法使用 maskblt 完成您所要求的操作......但使用 ATL 和 GDI+ 的 CImage 类更容易全面:)
【讨论】:
以上是关于静态控制不透明+MFC的主要内容,如果未能解决你的问题,请参考以下文章