CListCtrl 怎样显示缩略图?

解决方案 »

  1.   

    1 抽样,缩略图的标准做法2 bitblt自动计算比例的你看着用
      

  2.   

            CBitmap* pBitmap;
    pBitmap = new CBitmap;
    pBitmap->Attach(hBitmap);
    m_ImageList.Add(pBitmap, RGB(255, 255, 255));
    InsertItem(1+i, wfd.cFileName, 0);这段代码有什么问题呢?
      

  3.   

    Bitmap bmp((path2).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(),path2,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_ImageList.Add(pImage,RGB(255,255,255));
    pImage->DeleteObject();
    InsertItem(1+i, wfd.cFileName , a);
    这段代码显示出来的是文件名,哪里的问题呢?
      

  4.   

    这里有一个。
      http://download.csdn.net/detail/hemmingway/4250428