我想知道如何填充" CollectLangString中定义的TStings?

时间:2016-05-01 02:16:23

标签: delphi firemonkey

什么是"引擎"在TLang下...

TLang在我的小项目中没问题但是项目规模较大很难管理。我试着弄清楚它是如何工作的。我在FMX.Types中为许多proc和函数提供资金。我专注于:CollectLangStart,CollectLangFinish和CollectLangStrings。可以编译调用这些函数,但我不知道填充此TStrings的位置和时间,TStrings保持空白。文档谈论"场景"但它非常有限。

1 个答案:

答案 0 :(得分:1)

必须在TStyleManager.UpdateScenes和复制CollectLangStart

之间调用{p> CollectLangStrings
var
  Str: TStrings;
begin
  CollectLangStart;
  TStyleManager.UpdateScenes;
  Str := TStringList.Create;
  try
    Str.Assign(CollectLangStrings); 
    Str.SaveToFile(ExtractFilePath(ParamStr(0)) + 'lang.lng');
  finally   
    Str.Free;
    CollectLangFinish;
  end;
end;