【免费】vc++编程技术600个大型项目源码(四)

【免费】vc++编程技术600个大型项目源码(四)

ID:18576677

大小:158.00 KB

页数:45页

时间:2018-09-19

【免费】vc++编程技术600个大型项目源码(四)_第1页
【免费】vc++编程技术600个大型项目源码(四)_第2页
【免费】vc++编程技术600个大型项目源码(四)_第3页
【免费】vc++编程技术600个大型项目源码(四)_第4页
【免费】vc++编程技术600个大型项目源码(四)_第5页
资源描述:

《【免费】vc++编程技术600个大型项目源码(四)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、本资料由-校园大学生创业网-提供http://www.chuangyw.com/自绘按钮一、位图按钮的实现方法:首先,我们创建一个基于对话框的应用程序CmyDialog;Ι.MFC的CBitmapButton类,这也是最简单的功能最强的位图按钮。我们可以采取如下的步骤:1.为按钮指定唯一的按钮标题(此例子为OK按钮,这里设置按钮标题为OK)并选中Ownerdraw属性,然后在项目中加一些位图资源,并用名字标示这些资源而不要用数字ID,其ID分别为”OKU”、”OKD”、”OKF”、”OKX”(一定

2、要加双引号),分别对应于按钮的“松开(Up)”、“按下(Down)”、“获得输入焦点(focused)”和“禁止(Disable)”状态。2.我们还要在对话框类中加入CBitmapButtonm_aBmpBtn;数据成员。3.在初始化中为这个成员调用:…m_aBmpBtn.AutoLoad(IDOK,this);…点击编译按钮,成功后运行程序,哈哈,看看效果,我们的位图按钮已经建立了。/*如果以上方法不行请检查你的BITMAP资源,APPSTUDIO中,"OKU"和"OKD"等的资源名称都是需要用

3、引号引起来的,AutoLoad不成功,很可能就是由此产生的。*/改变CANCLE按钮的标题,可以设置其标题为ICON或者BITMAP:(这里我们演示了bitmap的用法,Icon按钮读者可以按照下面的代码处理)Ⅱ.使用图标制作按钮1.打开ICON按钮的属性页,在Style中选中Icon。2.在对话框类的头文件中定义成员变量(使用ClassWizard加入这个成员变量)CButtonm_IconBtn;//对应于图标按钮3.创建相应的图标或者位图资源:图标资源:IDI_ICONBUTTON4.在初始

4、化中加入如下代码:…//对应于图标按钮HICONhIcon=AfxGetApp()->LoadIcon(IDI_ICONBUTTON);m_IconBtn.SetIcon(hIcon);…重新编译运行我们的程序,奇妙的图像按钮呈现在我们的眼前了。Ⅲ.使用位图制作按钮1.打开BITMAP按钮的属性页,在Style中选中Bitmap。2.对话框类的头文件中定义成员变量(使用ClassWizard加入这个成员变量)CButtonm_IconBtn;3.创建位图资源:位图资源:IDB_BITMAPBUTT

5、ON4.在初始化中加入如下代码://对应于位图按钮…在线代理http://www.dailiav.com/提供部分资料减肥药排行榜http://pigproxy.cn/提供部分资料本资料由-校园大学生创业网-提供http://www.chuangyw.com/HBITMAPhBmp=::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAPBUTTON));m_BmpBtn.SetBitmap(hBmp);二、一,只加载一张位图的方

6、法:1,装入bmp资源,id为IDB_BMP,按钮的bitmap属性设为true,icon属性为false。2,CButton*pBtn=(CButton*)GetDlgItem(IDB_BMP);CBitmapbitMap;HBITMAPhBit;if(bitMap.LoadBitmapW(IDB_NORMAL_BTN)){  hBit=(HBITMAP)bitMap.Detach();  pBtn->SetBitmap(hBit);}缺点:图片不会自动拉伸。二,为按钮的不同状态加载不同的位图:

7、(使用CBitmapButton类)这种方法还可以。1,按钮属性OwnerDraw选上,按钮ID:IDC_BUTTON1为IDC_BUTTON1添加CButton变量m_button,2,然后手动将CButtonm_button改为CBitmapButtonm_button;3,在初始化里边m_button.LoadBitmaps(IDB_BITMAP1,IDB_BITMAP2);//IDB_BITMAP1:平时;IDB_BITMAP2:按下m_button.SubclassDlgItem(IDC

8、_BUTTON1,this);m_button.SizeToContent();或者用另一种方式,不必为IDC_BUTTON1添加关联的变量。直接声明CBitmapButtonm_button;,在初始化里边调用m_BitmapBtn.AutoLoad(IDC_BUTTON1_AREA,this);//把按钮和变量联系起来m_BitmapBtn.LoadBitmaps(IDB_BITMAP1,IDB_BITMAP2);在线代理http://www.dailiav.com/提供部分资

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。