hdc1=CreateCompatibleDC(hdc); //获得与已知hdc向兼容的内容设备
BITMAP bm;
hMp =SHLoadImageResource(m_hInstance ,IDR_SHUOMING); //获得图片句柄, 若从资源里面加载图片,不管什么格式是GIF或JPG等格式,必须放到GIF(Resource Type)下面才可以加载,,放到Bitmap,JPG下面都不可以
GetObject(hMp, sizeof(bm), &bm); //使用这个函数是下面要用到图片的大小信息,该函数得到指定图形对象的信息,根据图形对象,函数把填满的或结构,或表项(用于逻辑调色板)数目放入一个指定的缓冲区。
hOldBitmap=SelectBitmap(hdc1,hMp); //把位图选入设备内容
BitBlt(hdc, 0,0 ,bm.bmWidth,bm.bmHeight, hdc1, 0,0,SRCCOPY); //这样图片就显示出来了,最后不要忘了释放资源
SelectBitmap(hdc1, hOldBitmap);
DeleteBitmap(hMp);
DeleteDC(hdc1);
显示位图常用取BitBlt()方法,它是将一幅位图从一个设备场景复制到另一个。源和目标DC相互间必须兼容,
要在一个设备环境中显示位图,不能直接在上面“画”(目前我是我么觉得的),需要创建一个与之相兼容的新设备环境然后将位图选择入些新设备环境,然后再从些新设备环境中拷备位图以显示到正确的设备环境中。