您的位置:首页 > 其它

使用SetLayeredWindowAttributes函数设置窗口透明色与透明度

2008-10-01 15:37 507 查看
转自:http://www.wysx.cn/blog/user1/1/archives/2008/6955.html

http://hi.baidu.com/wensan000/blog/item/4cc22a2322506440ad34decc.html

BOOL SetLayeredWindowAttributes(
HWND hwnd,
COLORREF crKey,
BYTE bAlpha,
DWORD dwFlags
);

hwnd是透明窗体的句柄,
crKey为颜色值,
bAlpha是透明度,取值范围是[0,255],
dwFlags是透明方式,可以取两个值:
当取值为LWA_ALPHA时,crKey参数无效,bAlpha参数有效;
当取值为LWA_COLORKEY时,Alpha参数有效而窗体中的所有颜色为crKey的地方将变为透明。
LWA_ALPHA = 0x2
LWA_COLORKEY=0x1
也可以取两个值的组合:LWA_ALPHA Or LWA_COLORKEY。这样crKey的地方将变为全透明,而其它地方根据bAlpha参数确定透明度。

要使使窗体拥有透明效果,首先要有用SetWindowLong设置WS_EX_LAYERED扩展属性
WS_EX_LAYERED = 0x80000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: