如何使窗口的部分区域透明?(WIN32)

4

我该如何让窗口内的一个矩形,例如仅有50%不透明度,并使其具有WS_EX_TRANSPARENT效果,以便鼠标单击可以穿过它?

3个回答

4

我认为仅通过设置WS_EX_TRANSPARENT是不可能实现的,但可以使用两个窗口来完成。创建一个带有洞的窗口,使用SetWindowRgn函数,并在该洞内使用WS_EX_LAYERED和WS_EX_TRANSPARENT样式放置另一个透明窗口。


减少不透明度部分可以用其他方法完成吗?还是也要用同样的方式来做? - Razvi

2

看一下 SetLayeredWindowAttributes Win32 函数。

它可用于设置窗口的 不透明度透明度



网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接