MFC加载位图资源的实现
来源:互联网 发布:高仿包包淘宝哪里买 编辑:程序博客网 时间:2024/05/18 20:13
MFC加载位图资源的实现
1、添加OnEraseBkgnd函数
该方法是在指定位置加载位图
BOOL CbitmapDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP2);
BITMAP bmp;
bitmap.GetBitmap(&bmp);
CDC dcCompatible;
dcCompatible.CreateCompatibleDC(pDC);
dcCompatible.SelectObject(bitmap);
CRect rect;
GetClientRect(&rect);
//pDC->BitBlt(0,0,rect.Width(),rect.Height(),&dcCompatible,0,0,SRCCOPY);
pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcCompatible,0,0,
bmp.bmWidth,bmp.bmHeight,SRCCOPY);
return TRUE;
}
利用静态文本加载位图:
添加一个静态文本框,修改ID。
为改静态文本添加一个成员变量,或者直接在源代码中为该控件绑定一个成员变量;
HBITMAP m_handleState;
m_bkStatic2=(CStatic*)GetDlgItem(IDC_STATIC2);
m_handleState=(HBITMAP)::LoadImage(::AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP8),IMAGE_BITMAP,0,0,0);
m_bkStatic2->ModifyStyle(0,SS_BITMAP);
m_bkStatic2->SetBitmap(m_handleState); 在OnPaint函数中加载一副位图:
1、位图装载:CBitmap::LoadBitmap (CBitmap::GetBitmap取得高度)
2、创建兼容的内存DC,CDC::CreateCompatibleDC;
3、BITMAP结构体用于描述位图的属性:
typedef struct tagBITMAP { /* bm */ int bmType; int bmWidth; int bmHeight; int bmWidthBytes; BYTE bmPlanes; BYTE bmBitsPixel; LPVOID bmBits;} BITMAP;
4、使用贴图函数显示内存DC中的位图内容CDC::BitBlt(.....):
代码:
CBitmap bitmap;bitmap.LoadBitmap(IDB_PASSWORD);BITMAP bm;bitmap.GetBitmap(&bm);m_dc.CreateCompatibleDC(NULL);m_dc.SelectObject(&bitmap);//将位图选入设备描述表中m_size.cx=bm.bmWidth;m_size.cy=bm.bmHeight;//DeleteObject(&bitmap);//将窗口移动与位图相同大小MoveWindow(0,0,m_size.cx+5,m_size.cy+5,FALSE);
在OnPaint()函数中:CPaintDC dc(this); // device context for painting//位图加载dc.BitBlt(0,0,m_size.cx,m_size.cy,&m_dc,0,0,SRCCOPY);
0 0
- MFC加载位图资源的实现
- MFC中加载位图资源到窗口中
- MFC基于对话框的位图加载
- MFC加载位图背景
- MFC位图加载
- MFC加载位图文件
- MFC加载位图
- MFC 加载位图
- MFC加载位图
- 加载位图资源
- MFC透明位图(1)--BMP的实现
- MFC透明位图(2)--PNG的实现
- MFC透明位图(2)--PNG的实现
- MFC透明位图(1)--BMP的实现 .
- MFC中实现简单的位图显示
- MFC中位图按钮的实现方法:
- MFC笔记 位图背景窗体的实现
- MFC中实现位图的透明显示
- Mysql常用函数汇总
- Win7系统下修改VC6.0的字体
- final in Java DEMO
- js下 移动端底部下拉菜单
- cocos2dx中的内存管理机制
- MFC加载位图资源的实现
- 深入理解JavaI/O流
- 计算机编码世界(一)
- java 面试题总结
- 541 最强DE 战斗力【数学和大数处理】
- Sqllite 比较运算符 != 和 逻辑运算符 is not 的区别
- 计算机编码世界(二)
- 思维习惯矫正
- JAAS