自定义窗框 - 光滑边框?

时间:2012-02-23 12:33:32

标签: c++ winapi

我通过处理消息处理程序中的WM_NCPAINT消息在我的应用程序中绘制自定义边框。问题是即使在设置了窗口区域之后,我的应用程序的角落也没有“平滑”#34;。

我想也许我可以只为屏幕获取HDC并插入角落周围的像素以获得半透明效果,但看到我必须在用户移动窗口时不断重新绘制边框,我不要认为这是一个有效的选择。

是否有人知道如何模拟半透明或至少平滑角落附近的边界?

这里是角落的样子:

http://i.imgur.com/Xaj9k.png

提前致谢。

1 个答案:

答案 0 :(得分:3)

使用Layered Window。这适用于Windows 2000以上。

如果你想要Aero Glass效果(Vista以上),那么this article可以很好地概述历史绘画技巧和使用桌面窗口管理器的详细信息。