这些例子都在vs2005测试通过
一.最简单的一种
1、将图像文件以资源形式加入工程中,IDB_BITMAP1
2、用一个PICTURE控件,在其属性中,将其Type设置为Bitmap
3、将Piture控件的属性中的Image设置为IDB_BITMAP1
二.这个方法也比较简单(代码解释请看第三种方法)
1、将图像文件以资源形式加入工程中,IDB_BITMAP1
HDC
CBitmap bit;
MemDC =CreateCompatibleDC(0);
CString cc;
bit.LoadBitmapW(IDB_BITMAP1);
SelectObject(MemDC,bit);
CClientDC dc(this);
BitBlt(dc.m_hDC,0,0,400,300,MemDC,0,0,SRCCOPY);
三. 这个方法比较好,从文件里面导入相片(代表人人看法)
HDC
MemDC =CreateCompatibleDC(0);//得到一个兼容设备句柄
HBITMAP bit;//一个位图
CString cc;
cc="test.bmp";//图片名称
bit=(HBITMAP)LoadImage(AfxGetInstanceHandle(),cc,IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);//导入图片
SelectObject(MemDC,bit);//把图片选择设备
CClientDC dc(this);//取得dc
BitBlt(dc.m_hDC,0,0,400,300,MemDC,0,0,SRCCOPY);//把 MemDC到dc.m_hDC显示,也就是在屏幕显示
补充:如果想要在一个按钮上添加位图可以这样子
1.先设Bitmap 为ture
CButton *pBtn = (CButton *)GetDlgItem(IDC_BUTTON1);
pBtn->SetBitmap(::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP1)));
或是从文件夹里面导入图片也可以:
HBITMAP bit;
bit=(HBITMAP)LoadImage(AfxGetInstanceHandle(),TEXT("test.bmp"),IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);//导入图片
CButton *pBtn = (CButton *)GetDlgItem(IDC_BUTTON1);
pBtn->SetBitmap((HBITMAP)bit);
bmp无闪烁显示技术HDC hdc;
HDC
HDC
HDC
HDC hScrDC;
HBITMAP bmp;