资源png未找到

azr*_*l11 -1 delphi png delphi-7

我创建了一个名为glyfs.rc的png资源文件
GLYF_CONFEDITOR RCDATA confeditor.png
GLYF_EXTRAFE RCDATA extrafe.png
.......

我在我的项目中添加它.
放一个TsBitBtn(它是一个alphaskin组件类)并尝试sbitbtn1.Glyph.LoadFromResourceName(HInstance,'GLYF_CONFEDITOR');
在运行时从资源文件加载 glyf我得到名称为'GLYF_CONFEDITOR'的错误资源文件未找到.

我究竟做错了什么?

我用于png的3方工具是从这里下载
的pngdelphi但是sbitbtn加载原生的png文件...

Pre*_*ion 5

您的代码存在多个问题:

  • TBitBtn.Glyph是类型TBitmap并且TBitmap.LoadFromResourceName假设RT_BITMAP资源类型,而不是RT_RCDATA"资源未找到"错误.
  • 即使您使用RT_BITMAP它会抛出EInvalidGraphic或similar¹因为再- TBitBtn.GlyphTBitmap自然TBitmap不会加载PNG数据.

¹在LoadFromResourceName后面有WinAPI函数LoadImage,实际的错误信息可能会有所不同.