1. 加载 BMP
CStatic* pWnd = (CStatic*)GetDlgItem(IDC_PIC); // 得到 Picture Control 句柄
pWnd->ModifyStyle(0, SS_BITMAP); // 修改它的属性为位图
pWnd->SetBitmap((HBITMAP)::LoadImage(NULL, _T("bmp.bmp"),
IMAGE_BITMAP,
100,
50,
LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE));
2. 加载 PNG
CStatic* pWnd = (CStatic*)GetDlgItem(IDC_PIC); // 得到 Picture Control 句柄
CImage image;
image.Load(_T("png.png");
HBITMAP hBmp = image.Detach();
pWnd->SetBitmap(hBmp);
pWnd->SetWindowPos(NULL,
0,
0,
100,
50,
SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOZORDER);
3. 在资源编辑器中选定图片控件 -> Alt+Enter 打开该图片控件的“属性窗口” -> 在 "Type" 中选定图片类型 -> 在"Image"中选定图片对应的资源 ID.
原文: http://hi.baidu.com/beachfish%CA%B7%D3%F1%CB%A7/blog/item/8addb204c5e93e9be850cd7b.html
本文介绍了如何在MFC应用程序中使用CStatic控件加载不同类型的图片,包括BMP和PNG格式。对于BMP格式,通过设置句柄并指定文件路径实现加载;而对于PNG格式,则先将图片加载到CImage对象再转换为位图句柄进行显示。此外还介绍了如何在资源编辑器中设置图片控件的类型及资源ID。


4万+

被折叠的 条评论
为什么被折叠?



