2012-02-23 38 views
1

我在我的应用程序中通过处理WM_NCPAINT消息在我的消息处理程序中绘制自定义边框。问题是,即使设置窗口区域后,我的应用程序的角落不是“光滑的”。自定义窗口框架 - 平滑边框?

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

有谁知道一种方法来模拟半透明或至少平滑边界附近的边界吗?

这里的角落是什么样子:提前

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

感谢。

回答

3

使用Layered Window。这从Windows 2000起可用。

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

+0

谢谢,使用分层窗口效果很好。但是,现在我的WM_NCPAINT处理程序不工作:( – Gogeta70 2012-02-24 02:27:56