无法从资源加载位图
Not able to load Bitmap from resource
从资源加载位图时遇到问题。我有一个项目要维护。图像是从文件加载的,但我想从资源加载它们。
因此,下面的代码正在工作:
WCHAR path[MAX_PATH] = TEXT("C:\nananana...");
pBitmapClose = Bitmap::FromFile(path);
但是,当我尝试使用from资源时,它不起作用。我已经尝试了以下几个参数:
pBitmapClose = Bitmap::FromResource(g_hInstance, MAKEINTRESOURCE(IDB_BTN_CLOSE));
或
pBitmapClose = Bitmap::FromResource((HINSTANCE) GetModuleHandle(NULL), MAKEINTRESOURCE(IDB_BTN_CLOSE));
有人能帮帮我吗?
您的资源是什么格式的?
GDI+只能从资源中加载位图(.BMP)图像。如果你想从资源中加载PNG或JPG图像,你需要使用流来拼凑它。看见http://www.codeproject.com/Articles/3537/Loading-JPG-PNG-resources-using-GDI一个方便的类可以做到这一点。
BOOL CreateBitmap(LPCTSTR szFileName)
{
if(::PathFileExists(szFileName))
m_pBitmap = Bitmap::FromFile(T2CW(szFileName));
else
{
m_pBitmap = Bitmap::FromResource( ModuleHelper::GetResourceInstance(), MAKEINTRESOURCE(IDB_NOFIND));
}
return !IsNull();
}
//代码将在上运行
相关文章:
- 如何从路径字符串加载Gdiplus::位图
- 如何从资源文件(.rc 文件)加载位图?
- 如何诊断保存和加载位向量(std::vector)的奇怪行为<bool>?
- 尝试从资源加载位图返回NULL,错误代码为1813
- 使用D3DXLOADSURFAFROMEMORY加载位图
- Assimp加载排放图
- 快板 5 如何隐藏/卸载位图
- 正在将位图加载到窗口
- c++ GDI 位图不想加载
- 无法从资源加载位图
- 如何在不使用外部库的情况下加载到 8 位C++位图图像
- 直接2D 加载和绘制位图
- 无法从内存正确加载位图
- 在SDL中对X位图加载器进行编码
- 在C++中加载位图时出现Big Endian问题
- Directx 位图无法加载
- 是否有一些方法可以使用CBitmap::FromHandle在Cimagelist上加载位图
- 使用GetDIBits加载位图
- 加载位图文件(.bmp)
- visual studio 2010 -加载位图图像到WINApi c++和显示