设置对话框的背景颜色及设置透明

只谈情不闲聊 提交于 2019-12-09 09:45:48

现说设置背景颜色。

    我用了很多方法都不行,查了很多资料,现在说一下解决方案吧。

    在XXXXXXDlg.头文件的protected:中加入CBrush m_brush;

    在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为不透明。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!