- 公开视频 -> 链接点击跳转公开课程
- 博客首页 -> 链接点击跳转博客主页
目录
CStatic
基本概念
-
图像类型:图片控件可以显示多种类型的图像,包括位图(BMP)、图标(ICO)、元文件(WMF)等。
-
样式设置:通过设置控件的样式,可以定义图片控件的行为和外观,例如是否居中显示图像。
-
资源绑定:图片控件可以绑定到资源中的图像,或者动态加载图像文件。
成员函数
-
Create:创建图片控件并将其附加到
CStatic
对象。 -
SetBitmap:设置图片控件显示的位图。
-
SetIcon:设置图片控件显示的图标。
-
SetCursor:设置图片控件显示的光标图像。
-
SetEnhMetaFile:设置图片控件显示的增强型元文件。
-
GetBitmap:获取图片控件当前显示的位图句柄。
-
GetIcon:获取图片控件当前显示的图标句柄。
-
GetCursor:获取图片控件当前显示的光标句柄。
-
GetEnhMetaFile:获取图片控件当前显示的增强型元文件句柄。
示例代码
cpp
void CMainDlg::OnBnClickedButton24()
{
// 位图对象
CBitmap bitmap;
// 加载资源
bitmap.LoadBitmapW(IDB_BITMAP3);
// 控件对象
CStatic* pStaticPic = (CStatic*)GetDlgItem(IDC_STATIC_PIC);
// 修改风格
pStaticPic->ModifyStyle(SS_ENHMETAFILE, SS_BITMAP | SS_CENTERIMAGE);
// 设置位图
pStaticPic->SetBitmap(bitmap);
// 设备对象
CDC* pDC = pStaticPic->GetDC();
CDC pCom;
pCom.CreateCompatibleDC(pDC);
// 图像资源
pCom.SelectObject(&bitmap);
// 控件数据
CRect rect;
pStaticPic->GetClientRect(rect);
// 图像数据
BITMAP bitmapInfo;
bitmap.GetBitmap(&bitmapInfo);
// 提升质量
pDC->SetStretchBltMode(COLORONCOLOR);
// 动态调整
pDC->StretchBlt(0, 0, rect.Width(), rect.Height(), &pCom, 0, 0, bitmapInfo.bmWidth, bitmapInfo.bmHeight, SRCCOPY);
// 释放对象
ReleaseDC(pDC);
}