gpt4 book ai didi

delphi - 从资源加载位图

转载 作者:行者123 更新时间:2023-12-01 22:35:00 27 4
gpt4 key购买 nike

我在 How to store images in FireMonkey? 上找到了从资源文件加载位图的解决方案我尝试在我的 Firemonkey 应用程序中使用它,但它找不到资源并引发错误“EresNotFound”。我的资源.RC文件是这样的

Bitmap_1    BITMAP    "Test.bmp"

我的代码是

procedure Tform1.load_image_from_resource(var Im1: Timage; res_name: String);
var InStream: TResourceStream;
begin
InStream := TResourceStream.Create(HInstance, res_name,RC_RTDATA);
try
Im1.Picture.Bitmap.LoadFromStream(InStream);
finally
InStream.Free;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Load_image_from_resource(Image1,'Bitmap_1');
end;

我还找到了问题Delphi 2010: unable to find resource - EResNotFound的解决方案。但仍然没有找到资源

最佳答案

您的代码中有几个问题,您需要将资源声明为 RCDATA

Bitmap_1    RCDATA    "Test.bmp"

看起来您创建了 VCL 应用程序,并且资源类型名称中有一个拼写错误,它应该是 RT_RCDATA,工作 FireMonkey 代码如下所示

procedure Tform1.load_image_from_resource(var Im1: Timage; res_name: String);
var InStream: TResourceStream;
begin
InStream := TResourceStream.Create(HInstance, res_name, RT_RCDATA);
try
Im1.Bitmap.LoadFromStream(InStream);
finally
InStream.Free;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Load_image_from_resource(Image1, 'Bitmap_1');
end;

关于delphi - 从资源加载位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41256933/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com