When the Child uses a function of its parent, we get wrong strings.
The Parent calls to siLangRT1.GetTextOrDefault('IDS_0'...);, returns the Child's translation for IDS_0, not the Parent's one.
For example:
Code: Select all
TParentForm(TForm);
function ParentString: String;
begin
Result := siLangRT1.GetTextOrDefault('IDS_0' (*Parent*));
end;
...
TChildForm(TParentForm); ...
procedure FormShow;
Caption := ParentString + ' > ' +
siLangRT1.GetTextOrDefault('IDS_0' (*Child*));
...
'Child > Child'
instead of
'Parent > Child'
This is because the Parent's function "ParentString" gets the Child's collection of strings instead of its own collection of strings!
Does the Parent's collection of strings available at Run Time, even if only the Child has been instanciated???
Thanks