我的画面边框是白色的(0xfffffffe)。我的框架内部是黑色(0xff000000)。
我想让边框半透明(alpha值为100),内部不透明。显然,我已经使用SetLayeredWindowAttributes
来做这件事,但它没有用。
此变体:SetLayeredWindowAttributes(RGB(0xxff, 0xff, 0xfe), 100, LWA_COLORKEY)
将边框设置为alpha为100,但内部为完全透明。
此变体:SetLayeredWindowAttributes(RGB(0xxff, 0xff, 0xfe), 100, LWA_COLORKEY | LWA_ALPHA)
将内部设置为100的alpha,但将边框设置为完全透明。
如何使内部不透明,边框透明?我不能使用多个顶级窗口来实现这种情况下的影响。
答案 0 :(得分:1)
使用UpdateLayeredWindow
而不是SetLayeredWindowAttributes
。您可以将整个帧(包括任何透明度)预渲染到32位位图上,将其选择为DC并将其传递给UpdateLayeredWindow
。