想在对话框上显示DIB位图,如何显示,请高手指点

解决方案 »

  1.   

    有没有人有代码,可以发给我吗。。[email protected]
      

  2.   

    DIB位图是从BMP文件打开的话HBITMAP hBmp;
    CBitmap  bmp_Enable;hBmp = (HBITMAP)LoadImage(NULL, "normal.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
    if(hBmp != NULL)
    {
      bmp_Enable.Attach(hBmp);
    } void CDlg::OnPaint() 
    {
    CPaintDC dc(this); // device context for painting
    //显示最高温度信息

    CDC memDC;
    if (!memDC.CreateCompatibleDC(&dc))
    return;

    BITMAP bm;
    bmp_Enable.GetBitmap(&bm);
    CBitmap* pOldBitmap = memDC.SelectObject(&bmp_Enable);
    dc.BitBlt(0, 0, bm.bmWidth, bm.bmHeight, &memDC, 0, 0, SRCCOPY);
    memDC.SelectObject(pOldBitmap);
    }
      

  3.   

    楼上的好心人,想再请教一下,您知道怎样从内存中读BMP位图吗?不从资源中读
      

  4.   

    CRect   rect;   
    GetClientRect(&rect);
    CDC   dcMem;   
    dcMem.CreateCompatibleDC(&dc);   

    CString str;
    if(Language == false)//中文
    {
    str = ".\\skin\\six\\six.bmp";
    }
    else
    {
    str = ".\\englishskin\\six\\six.bmp";
    }
    HBITMAP createBitmap = (HBITMAP)::LoadImage(AfxGetInstanceHandle(), str, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);  

    BITMAP   bitmap;
    CBitmap bmp;
    bmp.Attach(createBitmap);//HBitmap to CBitmap
    bmp.GetBitmap(&bitmap);
    CBitmap   *pbmpOld=dcMem.SelectObject(&bmp);   
    dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,   
    bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);
    希望能帮上你的忙!
      

  5.   

    HBITMAP hBmp;
    CBitmap     bmp_Enable;hBmp = (HBITMAP)LoadImage(NULL, "normal.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
    if(hBmp != NULL)
    {
      bmp_Enable.Attach(hBmp);
    }    void CDlg::OnPaint() 
    {
        CPaintDC dc(this); // device context for painting
        //显示最高温度信息
        
        CDC memDC;
        if (!memDC.CreateCompatibleDC(&dc))
            return;
        
        BITMAP bm;
        bmp_Enable.GetBitmap(&bm);
        CBitmap* pOldBitmap = memDC.SelectObject(&bmp_Enable);
        dc.BitBlt(0, 0, bm.bmWidth, bm.bmHeight, &memDC, 0, 0, SRCCOPY);
        memDC.SelectObject(pOldBitmap);    
    }