设置窗口透明度 SetLayeredWindowAttributes函数

本文深入探讨了SetLayeredWindowAttributes函数的使用方法,包括其参数意义、透明方式设置以及实现机制。详细解释了颜色键、透明度、窗口混合作用的原理,帮助开发者掌握如何灵活应用此函数以实现复杂视觉效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.  http://www.cppblog.com/dbkong/archive/2006/11/28/15751.aspx

2.   http://blog.youkuaiyun.com/keke13/article/details/4102649

SetLayeredWindowAttributes()原形: 

BOOL SetLayeredWindowAttributes( 
HWND hwnd, // handle to the layered window 透明窗体的句柄  
COLORREF crKey, // specifies the color key 颜色值  
BYTE bAlpha, // value for the blend function 透明度,取值范围是[0,255]  
DWORD dwFlags // action 透明方式,可以取两个值: 
         当取值为LWA_ALPHA时,crKey参数无效,bAlpha参数有效; 
         当取值为LWA_COLORKEY时,bAlpha参数有效,而窗体中的所有颜色为crKey的地方将变为透明。 
        LWA_ALPHA = 0x2 
        LWA_COLORKEY=0x1 
); 
  其中dwFlags有LWA_ALPHA(值为2)和LWA_COLORKEY(值为1)两种设置,如果LWA_ALPHA被设置的话,通过bAlpha参数指定窗体的透明度;如果LWA_COLORKEY标志被设置的话,则指定关键色为crKey,该颜色所覆盖的区域将从窗体去除,去除后的区域将不再进行点击检测,其他颜色则正常显示。如果阿尔法混合值设置为0,其窗口区域同样不进行点击检测。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值