转载自:http://blog.sina.com.cn/s/blog_673ccb5b01010uwr.html
设置背景颜色:
我用了很多方法都不行,查了很多资料,现在说一下解决方案吧。
在XXXXXXDlg.头文件的protected:中加入CBrush m_brush;
(刘志杰备注 :这里我直接放在了HelloDlg.cpp文件里面:
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
//以下为刘志杰增加 2018年1月17日10:20:54
CBrush m_brush;//增加画刷定义
//以上为刘志杰增加 2018年1月17日10:20:54
)
在XXXXXXDlg.cpp文件中的OnInitDialog()初始化函数中加入画刷m_brush.CreateSolidBrush(RGB(255,255,255));RGB中的颜色自己定义。
然后在类向导中添加WM_CTLCOLOR消息函数。在里面只写一句话:return m_brush;
背景颜色就改了。
设置透明:
在OnInitDialog()初始化函数中添加两行代码:
SetWindowLong(GetSafeHwnd(),GWL_EXSTYLE,GetWindowLong(GetSafeHwnd(),GWL_EXSTYLE)|WS_EX_LAYERED);
SetLayeredWindowAttributes(0,200,LWA_ALPHA);
第二行中的200为透明度,0为全透明,255为不透明。