首先建立基于对话框的MFC应用程序工程testDlg,添加按钮,ID为IDC_Time,按钮的Bitmap属性要设为TRUE.
1.添加位图
在资源视图中 ,右键.rc文件,添加资源,bitmap,导入位图。即可。
2.在OnInitDialog()函数中,首先建立位图句柄
- HBITMAP hBitmap;
hBitmap = LoadBitmap(AfxGetInstanceHandle(),
MAKEINTRESOURCE(IDB_BITMAP1)); // IDB_BITMAP1为资源图片ID
3.获得按钮句柄并调用SetBitmap即可
((CButton *)GetDlgItem(IDC_Time))->SetBitmap(hBitmap);
以上方法按钮不能随图片改变大小
另外一种方法:
1.添加按钮ID为IDC_StartOrStop. 属性owner draw为true
2.添加变量CBitmapButton m_startorstop;
3.添加两个位图ID分别为IDB_UP.具体方法前面博文有提到
4.OnInitDialog()中//或onpaint中
m_startorstop.LoadBitmaps(IDB_UP);
m_startorstop.SizeToContent(); //调整按钮大小为图片大小