Windows图形界面(GUI)-MFC-C/C++ - CStatic

目录

CStatic

基本概念

成员函数

示例代码


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);
}
相关推荐
BadBadBad__AK13 小时前
线段树维护区间 k 次方和
c++·数学·算法·stl
卷无止境1 天前
Eigen 库如何借助 OpenMP 加速计算
c++·后端
卷无止境1 天前
OpenMPI、MPICH 与 OpenMP:关系、核心概念与架构全解
c++·后端
郝学胜_神的一滴2 天前
CMake 30:循环语法全解|foreach_while双循环精讲、迭代技巧与实战避坑指南
c++·cmake
卷无止境4 天前
C++ 的Eigen 库全解析
c++
卷无止境4 天前
现代 C++特性大盘点:一门脱胎换骨的老语言
c++·后端
郝学胜_神的一滴4 天前
CMake 27:缓存变量的特性、语法、类型与实操全解
c++·cmake
博客18006 天前
酷宝的使用方法,超好用的免费界面库,C++、MFC可用
c++·mfc·界面库·库来帮·酷宝
郝学胜_神的一滴6 天前
CMake 026:属性体系精讲、四大作用域全解 & 实战代码落地
c++·cmake
众少成多积小致巨7 天前
JNI (Java Native Interface) 技术手册中文参考指南
android·java·c++