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);
}
相关推荐
爱吃西瓜的小菜鸡14 分钟前
【C语言】判断回文
c语言·学习·算法
别NULL15 分钟前
机试题——疯长的草
数据结构·c++·算法
飞飞-躺着更舒服1 小时前
【QT】实现电子飞行显示器(改进版)
开发语言·qt
武昌库里写JAVA1 小时前
Java成长之路(一)--SpringBoot基础学习--SpringBoot代码测试
java·开发语言·spring boot·学习·课程设计
CYBEREXP20081 小时前
MacOS M3源代码编译Qt6.8.1
c++·qt·macos
蜜獾云1 小时前
linux firewalld 命令详解
linux·运维·服务器·网络·windows·网络安全·firewalld
ZSYP-S2 小时前
Day 15:Spring 框架基础
java·开发语言·数据结构·后端·spring
yuanbenshidiaos2 小时前
c++------------------函数
开发语言·c++
yuanbenshidiaos2 小时前
C++----------函数的调用机制
java·c++·算法
程序员_三木2 小时前
Three.js入门-Raycaster鼠标拾取详解与应用
开发语言·javascript·计算机外设·webgl·three.js