《visual.c++从入门到精通 第19章.ppt》由会员分享,可在线阅读,更多相关《visual.c++从入门到精通 第19章.ppt(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第19章换肤程序开发o 了解换肤程序的功能o 掌握换肤程序的开发过程19.1 程序分析19.1.1 功能分析19.1.2 要点分析19.1.1 功能分析o本程序分为两部分,源代码和示例程序。n源代码可以用来实现按钮控件换肤的功能;n示例程序可以告诉如何使用这些源代码。19.1.1 功能分析o主要的功能n自定义按钮的形状和颜色;n自定义按钮响应区域;n按钮有多态;n随时使用代码给按钮换肤;n支持多种事件,包括左键按下、左键弹起、鼠标移动、双击、失去焦点等事件。19.1.2 要点分析o本程序基于已有的第三方控件进行开发,主要功能是由已有的代码来实现的。n头文件xSkinButton.hn源文件xS
2、kinButton.cpp19.1.2 要点分析o主要步骤 把xSkinButton.cpp和xSkinButton.h两个文件添加到你的工程文件中。在必要的头文件中,包含xSkinButton.h文件,这样就可以使用CxSkinButton类。在资源编辑器中绘制出需要的按钮。把按钮的Owner draw属性设置为true。19.1.2 要点分析o主要步骤 为每一个按钮创建一个CxSkinButton类型的成员变量。n要在MFC ClassWizard对话框中添加成员变量,这样可以使成员变量和控件联系起来。在选择变量类型时,如果Variable type下拉列表框中无CxSkinButton项
3、目,可暂时选择CButton类,然后修改代码。19.1.2 要点分析o主要步骤 为按钮添加Bitmap资源:NORM位图:缺省的按钮图像。DOWN位图:按钮被按下时的图像。OVER位图:(可选项)鼠标在按钮上时的图像。如果没有该图像,则使用NORM位图代替。DISABLED位图:(可选项)按钮disabled状态的图像。如果没有该图像,则使用NORM位图代替。MASK位图:(可选项)按钮的有效区域。如果没有MASK,则有效区域为按钮的位图。缺省的透明色为RGB(255,255,255)19.1.2 要点分析o主要步骤 在对话框初始化函数OnInitDialog()中添加如下代码m_btn1.S
4、etSkin(IDB_B1NORM,IDB_B1DOWN,IDB_B1OVER,IDB_B1GRAY,IDB_B1MASK,0,0,0);n其中SetSkin 函数原型如下 void CxSkinButton:SetSkin(UINT normal,UINT down,UINT over,UINT disabled,UINT mask,short drawmode,short border,short margin)19.2 程序设计19.2.1 新建项目19.2.2 界面设计19.2.3 编辑代码19.3 程序运行编译生成可执行文件,运行程序19.4 开发常见问题及解决o第三方类库的使用o要善于分析源代码和示例程序,从而掌握控件和类的使用。o控件的成员变量o位图资源的添加