XP媒体中心动画按钮控制

介绍 我的任务是编写一个外观和行为都与XP Media Center 2005相似的应用程序。我发现媒体中心SDK中提供的插件模板远没有实际的媒体中心好看。作为一名vc++程序员,我发现插件并不能提供我所需要的功能。这在微软很常见,如果你想要任何好看的GUI类,你必须自己编写它们(Visual Studio, Office)。我决定从头开始编写一个应用程序。 背景 我喜欢媒体中心的动画按钮;首先,我使用两个动画gif写了一个类。这是草率的,而且在我看来是不对的。然后,我把媒体中心资源DLL分开,检查所有的图像。我注意到每个按钮由三个图像和一个Wav文件组成。这两个主要的图像是alpha混合的计时器,第三个图像是点击动画。我留下了深刻印象。好主意,真希望是我想到的。我只好将就着复制他们的技术。 环境 该项目使用Visual Studio 6 SP5和Microsoft Platform SDK(2003年2月)在Windows 2000和Windows XP上构建和测试。 使用的代码 MCButton类依赖于三个图像,Wav文件是可选的。添加“MCButton。h”和“MCButton。“cpp”到您的项目,三个映像到您的资源。在测试应用程序中,资源被定义为IDB_BUTTON_FIRST、IDB_BUTTON_LAST和IDB_BUTTON_PRESSED。在任何对话框中子类化一个按钮,并使用成员函数SetImages(UINT, UINT, UINT)设置图像; (可选)添加一个Wav文件资源,当点击按钮时播放。 在窗口初始化中,添加CMCButton方法:Hide  复制CodeBOOL CMainDlg: OnInitDialog () { / /…… / /设置MCButton m_Button。SubclassDlgItem (IDC_BTN,); m_Button。SetImages (IDB_BUTTON_FIRST IDB_BUTTON_LAST, IDB_BUTTON_PRESSED); m_Button.SetClickedSound (IDR_WAVE_SELECT);/ /可选 m_Button.Start (); / /…… 更改日志 2006年9月27日:我淘汰了GLOBAL。h,并增加了一个函数,以设置所有图像一次,更容易融入到任何项目。我不擅长写作,所以我重写了这篇文章,因为我需要练习。我还添加了一个GIF动画,这样你就可以清楚地看到按钮的作用,而不必下载它。 本文转载于:http://www.diyabc.com/frontweb/news978.html

原文地址:https://www.cnblogs.com/Dincat/p/13456196.html