MFC给按钮添加图片
mfc button image null 测试
VC中对话框上编辑里,通过控件方式无法给按钮设定图片的,需写代码实现,还好代码量不大,哈哈!
首先建立基于对话框的MFC应用程序工程testDlg,添加按钮,ID为IDC_BUTTON_TEST,接下来
一,首先建立位图句柄
1. // 方法一:加载非资源图片
2. HBITMAP hBitmap;
3. hBitmap = (HBITMAP)::LoadImage(
4. NULL,
5. "E://a.bmp", // 图片全路径
6. IMAGE_BITMAP, // 图片格式
7. 0,0,
8. LR_LOADFROMFILE|LR_CREATEDIBSECTION); // 注意LR_LOADFROMFILE
9. // 方法二:加载资源图片
10. HBITMAP hBitmap;
11. hBitmap = LoadBitmap(AfxGetInstanceHandle(),
12. // IDB_BITMAP_TEST为资源图片ID
二,获得按钮句柄并调用SetBitmap即可
1. ((CButton *)GetDlgItem(IDC_BUTTON_TEST))->SetBitmap(hBitmap);
三、差点忘了,按钮的Bitmap属性要设为TRUE;
以上代码均用VS2008测试过,其实CBitmapButton只能加载资源图片,还没有CButton方便.
第二步改变为:
1、为button添加control变量
2、使用setbitmap方法
验证是成功的
VC中对话框上编辑里,通过控件方式无法给按钮设定图片的,需写代码实现,还好代码量不大,哈哈!
首先建立基于对话框的MFC应用程序工程testDlg,添加按钮,ID为IDC_BUTTON_TEST,接下来
一,首先建立位图句柄
1. // 方法一:加载非资源图片
2. HBITMAP hBitmap;
3. hBitmap = (HBITMAP)::LoadImage(
4. NULL,
5. "E://a.bmp", // 图片全路径
6. IMAGE_BITMAP, // 图片格式
7. 0,0,
8. LR_LOADFROMFILE|LR_CREATEDIBSECTION); // 注意LR_LOADFROMFILE
9. // 方法二:加载资源图片
10. HBITMAP hBitmap;
11. hBitmap = LoadBitmap(AfxGetInstanceHandle(),
12. // IDB_BITMAP_TEST为资源图片ID
二,获得按钮句柄并调用SetBitmap即可
1. ((CButton *)GetDlgItem(IDC_BUTTON_TEST))->SetBitmap(hBitmap);
三、差点忘了,按钮的Bitmap属性要设为TRUE;
以上代码均用VS2008测试过,其实CBitmapButton只能加载资源图片,还没有CButton方便.