MFC编程:根据ID读取png,保存在一个Image对象中。
方法原型:
void LoadFromResource(
HINSTANCE hInstance,
UINT nIDResource
)throw();
用法:
CImage图像;
形象。LoadFromResource(hInstance,NID resource);
描述:
// hInstance是资源模块的句柄。如果图像资源在此项目中,则为空。如果是在其他模块中,比如DLL,就需要传入LoadLibrary的返回值。
// nIDResource是png的ID。
回复楼主补充:你说的图像是MFC里的吗?好像是C#的。
我看了Image类的代码,就是不支持从资源加载。让我们使用CImage。您的代码可以更改为:
HDC HDC temp = GetDC()-& gt;m _ hDC
m _ hdc memory = CreateCompatibleDC(hdc temp);
hbit map hbit map = CreateCompatibleBitmap(hdc temp,250,260);
SelectObject(m_hdcMemory,hbit map);
//使用GDI+加载PNG图片。
HDC HDC screen =::GetDC(m _ hWnd);
RECT RCT;
GetWindowRect(& amp;RCT);
POINT ptWinPos={rct.left,RCT . top };
graphics graph(m _ hdc memory);//GDI+中的类
CImage图像;
//mage image(L"bk.png ",TRUE);//GDI+中的类
形象。LoadFromResource(NULL,IDB _ BK);
//图形。draw image(& amp;图像,0,0,250,260);
形象。Draw(hdcScreen,0,0,250,260);