我得到一个错误,我不知道为什么我得到它...德尔福:设计模式中的“资源未找到” - 为什么?
所以:我有一个新的组件,基于sAlphaButton。 这有ImageList属性,我的组件扩展此按钮与我自己的字幕/图像,翻译成匈牙利语。
我用LoadRes来获取预定义的图像。
看到这个:
procedure TScrollPNGButton.LoadAsImageListFromRes(ResNames : TStrings; IL : TsAlphaImageList);
var
s : string;
i : integer;
begin
IL.CLear;
for i := 0 to ResNames.Count - 1 do begin
s := ResNames[i];
AddImageFromRes(hInstance, IL, s, ifPNG);
end;
end;
procedure TScrollPNGButton.LoadResToImageList;
var
sl : TStringList;
begin
sl := TStringList.Create;
try
sl.Text :=
Trim(
'scrollpngbutton_ok'#13 +
'scrollpngbutton_cancel'#13 +
'scrollpngbutton_close'#13 +
'scrollpngbutton_yes'#13 +
'scrollpngbutton_no'#13 +
'scrollpngbutton_refresh'#13 +
'scrollpngbutton_print'#13 +
'scrollpngbutton_email'#13 +
'scrollpngbutton_add'#13 +
'scrollpngbutton_delete'#13 +
'scrollpngbutton_edit'#13 +
''
);
LoadAsImageListFromRes(sl, FImgs);
finally
sl.Free;
end;
end;
constructor TScrollPNGButton.Create(aOwner : TComponent);
begin
inherited Create(aOwner);
FImgs := TsAlphaImageList.Create(nil);
inherited Images := FImgs;
LoadResToImageList;
end;
当我使用它的代码它的工作好。 但当我注册的,我尝试投入形式,我得到了错误:
Error Resource scrollpngbutton_ok not found. OK
我不明白,因为我把{$ R * .RES},并从这个代码工作中。 为什么找不到资源?创作失败了,还是什么?
好的,我可以使用Loaded;在设计时设置图像,但Loaded不在运行时调用。
什么是'TsAlphaButton'? [Google](http://www.google.se/search?sourceid=chrome&ie=UTF-8&q=TsAlphaButton)不知道。 – 2011-03-02 16:35:18
在哪个文件中您有$ R指令? – jachguate 2011-03-02 16:44:19
AlphaSkin组件。现在我发现错误的来源,他们使用hInstance,什么是不平等我的实例。我纠正了他们的代码。谢谢你的帮助! dd – durumdara 2011-03-03 12:31:14