2010-10-13 26 views
2

我正在尝试使用LoadFile方法将类型为.xpm的图像文件加载到wxBitmap对象中。下面的调用失败wxBitmap :: LoadFile在Windows中失败

wxBitmap aBitmap; 
aBitmap.LoadFile(strIconPath,wxBITMAP_TYPE_XPM); 

与错误

No image handler for type wxBITMAP_TYPE_XPM defined. 

然而,如果我通过包含XPM文件,并使用它,如下图所示加载它,它的工作原理。

#include "Icon.xpm" 

wxBitmap aBitmap; 
aBitmap.CopyFromIcon(wxIcon(Icon_xpm)); 

第一次执行的问题是什么?

回答

3

如果你只想使用XPM文件,那么wxImage::AddHandler(new wxXPMHandler);应该修复它,否则wxInitAllImageHandlers();更容易为多种图像类型。在尝试加载文件之前,都需要调用这两个文件。

1

尝试在LoadFile调用之前添加::wxInitAllImageHandlers();或将LoadFile调用中指定的图像类型更改为wxBITMAP_TYPE_ANY