如何绘制像Shaded Buttons一样的Windows 7任务栏

时间:2009-11-30 11:31:31

标签: c++ winapi visual-studio-2005 windows-7

Windows 7任务栏按钮在阴影背景上绘制。色调会以某种方式对鼠标在按钮上的位置作出反应。

我想在我的应用程序中使用这些按钮。我怎么能这样做?

4 个答案:

答案 0 :(得分:1)

也许试试

DrawThemeBackground

http://msdn.microsoft.com/en-us/library/bb773289(VS.85).aspx

给它BS_PUSHBUTTON常量。我在Windows XP中使用它来绘制毛绒蓝色的XP主题控件,但不是在Aero中,但是值得一试。

答案 1 :(得分:1)

该效果称为“彩色热轨”。它似乎没有专门的API。 developer blog中有一些关于它的注释:

我发现了一些来自Rudi Grobler的源代码,虽然做了类似的事情:

Make your WPF buttons color hot-track!

答案 2 :(得分:0)

我相信它们是作为GPU上的着色器程序实现的。只需一个简单的程序即可获取光标位置,并根据距该位置的距离计算每个像素的亮度。

答案 3 :(得分:0)

它使用新的动画api(其中一些存在于Vista中,扩展为7)没有神奇的风格设置,你还需要自己做绘图