구성 요소가 있습니다. 구성 요소에서 동적 TImageList를로드해야합니다.더 많은 프로젝트에 자원 (이미지)로드
오늘 내가 사용하는이 방법은 모든 프로젝트에서 한 번에 하나씩 모든 이미지를 추가해야합니다.
function NavigatorImages: TImageList;
var
vIcon: TBitmap;
I: Integer;
begin
if FNavigatorImages = nil then
begin
vIcon := TBitmap.Create;
try
FNavigatorImages := TImageList.Create (nil);
FNavigatorImages.Height := 16;
FNavigatorImages.Width := 16;
for I := 0 to 11 do
begin
vIcon.LoadFromResourceName (HInstance, 'IMAGE_' + IntToStr(I));
FNavigatorImages.AddMasked (vIcon, vIcon.Canvas.Pixels[0, FNavigatorImages.Height - 1]);
end;
finally
vIcon.Free;
end;
end;
Result := FNavigatorImages;
end;
예를 들어 각 프로젝트의 리소스를 추가하지 않고 여러 이미지를 구성 요소에로드 할 수있는 단일 리소스 파일을 만드는 방법은 무엇입니까? 너는 어떤 방법이 있니?
완벽! 감사. –
일단 리소스가 컴파일되고 프로젝트에 추가되면,'TImageList'는 리소스를로드하는 몇 가지 메소드 인'GetResource()','GetInstRes()','ResourceLoad()','ResInstLoad()'를 가지고 있습니다. –