代码如下:。。BOOL CMyDlg::LoadBitmapToList(CString strFileName,int i)
{ Bitmap bmp(strFileName.AllocSysString());
int sourceWidth = 120; //获得图片宽度,这个120和创建的120保持相同。
int sourceHeight = bmp.GetHeight(); //获得图片宽度
if(sourceHeight>120) //和m_ImageList.Create(120…)有很大关系,如果小于设
{
sourceHeight=120;
}
else
{
sourceHeight=bmp.GetHeight();
}
Bitmap* pThumbnail = (Bitmap*)bmp.GetThumbnailImage(sourceWidth , sourceHeight , NULL, NULL); //设定缩略图的大小
HBITMAP hBmp;
hBmp=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),strFileName,IMAGE_BITMAP, 0,0,LR_CREATEDIBSECTION|LR_DEFAULTSIZE|LR_LOADFROMFILE);
pThumbnail->GetHBITMAP(Color(255,255,255),&hBmp );
CBitmap *pImage = CBitmap::FromHandle(hBmp); //转换成CBitmap格式位图 int a=m_pImageList->Add(pImage,RGB(255,255,255));
pImage->DeleteObject();
return true;
}
{ Bitmap bmp(strFileName.AllocSysString());
int sourceWidth = 120; //获得图片宽度,这个120和创建的120保持相同。
int sourceHeight = bmp.GetHeight(); //获得图片宽度
if(sourceHeight>120) //和m_ImageList.Create(120…)有很大关系,如果小于设
{
sourceHeight=120;
}
else
{
sourceHeight=bmp.GetHeight();
}
Bitmap* pThumbnail = (Bitmap*)bmp.GetThumbnailImage(sourceWidth , sourceHeight , NULL, NULL); //设定缩略图的大小
HBITMAP hBmp;
hBmp=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),strFileName,IMAGE_BITMAP, 0,0,LR_CREATEDIBSECTION|LR_DEFAULTSIZE|LR_LOADFROMFILE);
pThumbnail->GetHBITMAP(Color(255,255,255),&hBmp );
CBitmap *pImage = CBitmap::FromHandle(hBmp); //转换成CBitmap格式位图 int a=m_pImageList->Add(pImage,RGB(255,255,255));
pImage->DeleteObject();
return true;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货