MFC使用bitmap

    技术2022-05-20  31

    CBitmap m_bitmap;  //对象

     

    m_bitmap.LoadBitmap(IDB_SPLASH);//加载

     

    void CSplashWnd::OnPaint(){ CPaintDC dc(this);

     CDC dcImage; if (!dcImage.CreateCompatibleDC(&dc))//创建内存设备环境  return;

     BITMAP bm; m_bitmap.GetBitmap(&bm);

     // Paint the image. CBitmap* pOldBitmap = dcImage.SelectObject(&m_bitmap);//这里把m_bitmap的位图选择到兼容DC dcImage,之后这个兼容DC就拥有和 m_bitmap同样大小的绘图区域 

    dc.BitBlt(0, 0, bm.bmWidth, bm.bmHeight, &dcImage, 0, 0, SRCCOPY);//对指定的源设备环境区域中的像素进行位块(bit_block)转换,以传送到目标设备环境 dcImage.SelectObject(pOldBitmap);}

     

    ///

    Windows使用与设备无关的图形设备环境(DC :Device Context) 进行显示 。MFC基础类库定义了设备环境对象类----CDC类。

    说到CDC类就不能不提一下GdiObject---图形对象类。 在Windows应用程序中,设备环境与图形对象共同工作,协同完成绘图显示工作。就像画家绘画一样,设备环境好比是画家的画布,图形对象好比是画家的画笔。用画笔在画布上绘画,不同的画笔将画出不同的画来。选择合适的图形对象和绘图对象,才能按照要求完成绘图任务。


    最新回复(0)