MFC中为按钮添加图片,图标

1,在dlg中添加button,并设置按钮属性如下图:

 

2,完成之后,进入classwizard 添加button的成员变量:

3进入::OnInitDialog()函数中添加代码:

 HICON m_hicn1=AfxGetApp()->LoadIcon(IDI_ICON1);  
 m_button1.SetIcon(m_hicn1);

完成,运行即可。

 

我在csdn中看到了其他认得例子,如http://download.csdn.net/detail/yantao8612/3398429(vc6.0)和

http://download.csdn.net/detail/yangzhenglun/2452217(vc++ 2005)

这两个例子,跟我上面提到的不是一个原理,他们在里面新建一个button类的派生类,新类里添加了很多成员函数,这两个例子的效果更好(我上面写的方法,按钮上只能是图片,不能添加文字)。

      我照他们做的却遇到了错误,在为button添加成员变量时,编译出错。错误如下:

c:\users\administrator\documents\vc 6.0\pic2\pic2dlg.h(27) : error C2146: syntax error : missing ';' before identifier 'm_button1'
c:\users\administrator\documents\vc 6.0\pic2\pic2dlg.h(27) : error C2501: 'ImageButton' : missing storage-class or type specifiers
c:\users\administrator\documents\vc 6.0\pic2\pic2dlg.h(27) : error C2501: 'm_button1' : missing storage-class or type specifiers

一直以为是button类的派生类的问题,今天细致一看,恍然大悟,我把派生类的头文件添加在了dlg.cpp文件里了,而不是放在dlg.h头文件中,试想在dlg.h中声明派生类的对象而不包含它的头文件,当然报错啦!(一件简单的c++问题)

 

呜呼,哀哉!这么一个问题折磨了我好几天!

另外:http://hi.baidu.com/lechie/blog/item/008c103b868cf5e815cecb37.html中写的很不错。我在上面是照着他第一个方法写的。

 

 

 

  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值