CClientDC dc(this);
HBITMAP bitmap;
/////读取位图文件SAMPLE.BMP
bitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(),"SAMPLE.BMP",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
ASSERT(bitmap);
HBITMAP OldBitmap;
CDC MemDC;
CRect rect;
MemDC.CreateCompatibleDC(&dc);
GetClientRect(rect);
OldBitmap=(HBITMAP)MemDC.SelectObject(bitmap);
///显示它
dc.BitBlt(20,20,rect.Width()-20,rect.Height()-20,&MemDC,0,0,SRCCOPY);
MemDC.SelectObject(OldBitmap);
-------------------------------------------
下面是通过打开对话框读取位图文件
在打开图片的头文件中加
CBitmap m_bmp;
在打开图片的函数中加:
static char BASED_CODE szFilter[] = "bmp Files (*.bmp)|*.mft|All Files (*.*)|*.*||";
CFileDialog CFDlg(true,"*.BMP",NULL,OFN_HIDEREADONLY | OFN_LONGNAMES ,szFilter);
if(CFDlg.DoModal()==IDOK)
{
CString filename=CFDlg.GetPathName();
HBITMAP hbmp;
if( m_bmp.m_hObject != NULL )//判断
{
m_bmp.DeleteObject();
}
/////////载入图片
hbmp = (HBITMAP)::LoadImage(AfxGetInstanceHandle(),
filename, IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION|LR_LOADFROMFILE);
浙公网安备 33010602011771号