我正在制作一个非矩形对话框,以Photoshop中的图像为模型(图像是对话框的背景,用户将看到图像的透明部分)。我不喜欢带有一些自定义控件的媒体应用程序的仪表板风格窗口。大多数背景图像要么是不透明的,要么是100%透明的-但在两者之间有一小块部分透明的像素,可以将图像平滑地融合到背景中。这对于网络图形非常有用,但是我还没有找到一种使Windows窗口正常工作的方法。我正在使用Windows模板库(WTL),msvc 2008-该应用程序必须在Windows XP以及Vista和Windows 7上运行。
当前,我只是使用背景图像的不透明部分来创建GDI裁剪区域,但这会产生相当粗糙的边缘。
有谁知道实现此目标的任何API函数(是WTL的一部分,还是可以从WTL访问的)?
最佳答案
也许您可以使用layered windows?我尚未使用WTL测试这些,但是您应该能够获得想要的效果。据我所知,我认为您不能将控件添加到分层窗口中,因此您需要将其附加到另一个(非分层)窗口以使用控件。