Я хочу знать, как "заполнить" TStings, определенные в CollectLangString?

Что такое "двигатель" под TLang...

TLang - это нормально в моем небольшом проекте, но с большим проектом трудно управлять. Я пытаюсь понять, как это работает. Я финансировал много процедур и функций в FMX. Типы. Я сосредоточился на: CollectLangStart, CollectLangFinish и CollectLangStrings. Вызов этой функции может быть скомпилирован, но я не знаю, где и когда эта строка TS заполнена, строка TS остается пустой. В документации говорится о "сцене", но она очень ограничена.

1 ответ

Решение

TStyleManager.UpdateScenes должен быть вызван между CollectLangStart и копирование 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;
Другие вопросы по тегам