CStaticEx继承CStatic,在类里实现:红色字,透明背景,怎么做呀?我现在的做法有问题:
m_brBkgnd.CreateSolidBrush(property.bkcolor);HBRUSH CStaticEx::CtlColor(CDC* pDC, UINT nCtlColor)
{
pDC->SetTextColor(m_property.txtcolor);
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)m_brBkgnd;
}
文字颜色正常,但有背景色.需要透明.
m_brBkgnd.CreateSolidBrush(property.bkcolor);HBRUSH CStaticEx::CtlColor(CDC* pDC, UINT nCtlColor)
{
pDC->SetTextColor(m_property.txtcolor);
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)m_brBkgnd;
}
文字颜色正常,但有背景色.需要透明.
m_brBkgnd.CreateSolidBrush(NULL_BRUSH);
显示出来是黑色背景,还是没透明.
在Win2000后的API SDK中引入了窗口层的概念也就是说你可以使用
CreateWindowEx
建立一个窗体并且指定其扩展样式为层之后可以使用SetLayeredWindowAttributes通过设置其ALPHA值来设置其透明度