使用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
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
相关文章推荐
- SetLayeredWindowAttributes 函数的使用方法,对话框透明的方法
- mfc的窗口透明度调整(SetLayeredWindowAttributes函数)
- 透明窗口(窗口上面文字图片等内容不透明)的实现(使用SetLayeredWindowAttributes API函数)
- VB 窗口透明度设置-WindowsAPI-SetLayeredWindowAttributes
- 设置windows窗口半透明(使用SetLayeredWindowAttributes API函数)
- 设置窗口的透明度SetLayeredWindowAttributes
- WinAPI: SetLayeredWindowAttributes - 设置窗口的透明
- 使用SetLayeredWindowAttributes API 实现透明窗口
- (转)xp下实现窗体透明特效/异形窗口SetLayeredWindowAttributes函数
- 工作问题积累(八)SetLayeredWindowAttributes(设置透明窗体)
- 异性窗口 (解决SetLayeredWindowAttributes函数未定义的问题)
- 用SetLayeredWindowAttributes实现窗口透明
- 渐进式透明的设置(SetLayeredWindowAttributes的用法)
- SetLayeredWindowAttributes函数的使用.
- 用SetLayeredWindowAttributes实现窗口透明
- VC6.0使用SetLayeredWindowAttributes实现透明效果
- 透明化窗口SetLayeredWindowAttributes
- SetLayeredWindowAttributes函数:
- VC++ 实现整个对话框透明的效果SetLayeredWindowAttributes
- VC中实现透明窗体--SetLayeredWindowAttributes