none
显示不出图像的问题 RRS feed

  • 问题

  • 代码如下
    void CShowPicMfcView::OnDraw(CDC* pDC)
    {
    	//CShowPicMfcDoc* pDoc = GetDocument();
    	//ASSERT_VALID(pDoc);
    
    	HBITMAP hbmp=(HBITMAP)::LoadImage(NULL,L"\\Flower.jpg",IMAGE_BITMAP,0,0,LR_DEFAULTCOLOR);
    	CBitmap m_bitmap;
    	m_bitmap.Attach(hbmp);
    
    	CDC dcMemory;
    	dcMemory.CreateCompatibleDC(pDC);
    
    	CBitmap *pOldBitmap=dcMemory.SelectObject(&m_bitmap);
    	pDC->BitBlt(0,0,50,50,&dcMemory,0,0,SRCCOPY);
    
    	dcMemory.SelectObject(pOldBitmap);
    
    	m_bitmap.Detach();
    	DeleteObject(hbmp);
    
    
    	// TODO: add draw code for native data here
    }
    无法显示图片。是否是因为LandImage的LR_DEFAULTCOLOR参数问题,(在mobile上)
    2010年3月3日 7:02

答案

  • 你不能用LoadImage来读取JPG图片.
    LoadImage只能读取BMP文件.
    我不知道WinCE是否支持和Win32平台下同样的JPG显示的API  OleLoadPicture ,不过你最好使用JPG的开源库进行解码显示.
    0xBAADF00D
    • 已标记为答案 yanghome 2010年3月4日 1:08
    2010年3月3日 14:17
    版主

全部回复

  • 你单步调试一下,看看hbmp 的值。
    2010年3月3日 8:48
    版主
  • 你不能用LoadImage来读取JPG图片.
    LoadImage只能读取BMP文件.
    我不知道WinCE是否支持和Win32平台下同样的JPG显示的API  OleLoadPicture ,不过你最好使用JPG的开源库进行解码显示.
    0xBAADF00D
    • 已标记为答案 yanghome 2010年3月4日 1:08
    2010年3月3日 14:17
    版主