可以用双层窗口来做,主窗口为半透明的阴影图片,子窗口为你想要的窗口。主要使用到的函数有:先使用SetWindowLong设定窗口的扩展属性,然后使用SetLayeredWindowAttributes函数设定主窗口为半透明。
引用 6 楼 zhoujielunzhimi 的回复:不对吧,qq那个是分层窗口,你可以用spy++查看这个窗口的样式,有个WS_EX_LAYERED。如果单纯是gdi+,窗口阴影处怎么做到透明呢? 这个问题好回答,onPaint的时候,setBkMode(TRANSPARENT);设置窗口为透明,绘制的时候空出一些空间给阴影部分,这样在绘制阴影部分时有就透明的效果了。……
不对吧,qq那个是分层窗口,你可以用spy++查看这个窗口的样式,有个WS_EX_LAYERED。如果单纯是gdi+,窗口阴影处怎么做到透明呢?
阴影部分再扩大些许
我也想知道,帮你顶~
15,978
社区成员
115,896
社区内容
加载中
试试用AI创作助手写篇文章吧