将PNG或JPG图像加载到CMFCToolBarImages中

Load PNG or JPG images into CMFCToolBarImages

本文关键字:CMFCToolBarImages 加载 图像 PNG JPG      更新时间:2023-10-16

MFC应用程序创建一个64*48大小的BMP图像数组,MFC功能区库会很好地加载这些图像。由于加载BMP需要时间,我尝试创建一系列PNG图像,然后将它们加载到功能区库中。

我尝试通过将BITMAPINFOHEADER.biCompression属性更改为BI_PNG来将位图保存为PNG格式,但没有保存任何图像。我还尝试使用PNG格式的CImage对象保存位图:

 CImage TempImageObj;
 TempImageObj.Attach(hbmp);
 hr = TempImageObj.Save(filename, Gdiplus::ImageFormatPNG);

这一次图像保存在文件中,但CMFCToolBarImages对象没有加载它们。

是否可以在MFC中创建PNG格式的图像(而不是使用CImage-Save方法)?是否可以将PNG图像加载到CMFCToolBarImages对象中?

MFC无法直接创建.png。您可以使用CImage或任何免费的图像库,如CxImage

要打开.png,可以使用CImage,然后将其用作HBITMAP对象:

CImage image;
image.Load( filename );   
HBITMAP hBmp = image; // Warning: image is still the data owner
toolbar.AddImage( hBmp);
相关文章:
  • 没有找到相关文章