实现这个功能主要参考了这个资源:MFC 图文按钮通过重载CButton按钮。来实现在按钮上加载图片
实现方式是重载了CButton类来实现。
首先介绍合适的ico图标,一般mfc合适的ico图标为 尺寸:64*64,高度:64像素,宽度:64像素,位深度:32。 这个可以在图片属性的详细信息中找到
ico图片的制作方法可百度,也可以在这个网站上在线转换,任何格式的图片都可以转换成ico图片,然后选择合适的尺寸保存就可以了。网址:ico图标制作
ico图标一般放在项目文件夹的res文件夹下
1.在mfc项目资源视图icon下,把这些ico图标添加到项目中来。
2.添加重载的CButton类的.h和.cpp文件到项目中。这两个文件可以在这里下载:ImageButton
3.修改ImageButton.cpp文件中的包含的头文件。
4.在*dlg.h文件中声明CImageList和自定义按钮注意加入重载类的头文件。
扫描二维码关注公众号,回复:
1578445 查看本文章
- CImageList m_images;
- ImageButton m_button1;
5.在*.dlg.cpp文件中添加代码
DoDataExchange函数中关联按钮的id和声明的自定义类按钮的对象。
- DDX_Control(pDX, IDC_BUTTON1, m_button1);
OnInitDialog函数中加入图像列表和关联按钮和图标
- m_images.Create(24,24,ILC_COLOR24|ILC_MASK,1,0);
- m_images.Add(AfxGetApp()->LoadIcon(IDI_ICON1));
- m_button1.SetImageList(&m_images);
- m_button1.SetImageIndex(0);
到此运行exe文件,可以同时显示按钮的图片和文字说明。
转:https://blog.csdn.net/CKRGD/article/details/46300677