EMS logo

Навигация по продуктам

Advanced Localizer

Наш партнерский статус

Microsoft Certified Partner
Oracle Certified Partner
Embarcadero Technology Partner

EMS Advanced Localizer

Продукт - FAQ

Содержание

В:
Что такое EMS Advanced Localizer?
О:
EMS Advanced Localizer - это незаменимый пакет компонентов для Delphi и C++ Builder, позволяющий добавлять языковую поддержку Вашим приложениям. Широкие возможности Advanced Localizer позволяют быстро и просто локализовать свойства компонентов каждой формы, создавать языковые файлы с текущими значениями свойств компонентов, управлять файлами локализаций, а также назначать компоненты и их свойства, подлежащие локализации. Приложения, локализуемые с помощью Advanced Localizer, не требуют перезагрузки. Более того, существует возможность написать компонент-потомок, который будет работать с заданными пользователем форматами языковых файлов.
В:
Что мне необходимо для начала работы с EMS Advanced Localizer?
О:
EMS Advanced Localizer - это набор компонентов для Delphi/C++ Builder, соответственно, вам необходимо установить на ваш компьютер Delphi/C++ Builder. Пакет EMS Advanced Localizer включает файл ‘readme.txt‘, содержащий подробную информацию об установке продукта.
В:
Можно ли с помощью EMS Advanced Localizer локализовать строки из секции ресурсных строк в исходном коде?
О:
Да, для этого необходимо проделать следующее:
  • Создать новую секцию в Вашем файле *.lng и назвать ее так, как Вам нужно. Например: [Additional strings].
  • Скопировать все строки из секции строчных ресурсов в новую секцию файла *.lng. Например, секция строчных ресурсов:
    resourcestring
    String1 = 'String one';
    String2 = 'String two';
    в файле *.lng будет выглядеть так:
    [Additional strings]
    String1="String one"
    String2="String two"
  • Тепер Вы можете получить любую из этих строк с помощью следующего кода:
    var
    S1, S2: string;
    ...
    {Source is TQLanguageSource component on your form}
    Source.FormSection := 'Additional strings';
    { Getting value of String1 }
    S1 := Source.LoadString('String1', '');
    { Getting value of String2 }
    S2 := Source.LoadString('String2', '');
    { S1 and S2 are now localized. You can use them in any purposes}
Посмотреть действующий пример подобной строки можно в модуле DataM.pas демонстрационного приложения Advanced Localizer.
В:
Я не могу понять, что делать с TQUserLanguageSource. Вы можете мне вкратце объяснить предназначение этого компонента?
О:
Разница между TQUserLanguageSource, TQLanguageSource и TQDBLanguageSource заключается в том, что TQLanguageSource и TQDBLanguageSource берут строки локализации из фиксированного источника (текстового файла или фиксированного формата данных), а TQUserLanguageSource может брать строки локализации из любых источников. Поэтому, если Вы хотите поместить строку локализации из другого источника, отличного от текстового файла или любого поддерживаемого формата данных, Вам понадобится TQUserLanguageSource.
В:
Я тестирую пробную версию компонентов Advanced Localizer, но при компиляции проекта получаю ошибку [DCC Error]: F1026 File not found: 'QLocalXXX.dcu'.
О:
Это ограничение пробной версии: в составе дистрибутива пробной версии нет файлов .dcu. Для устранения ошибки необходимо в настройках проекта в разделе "Runtime Packages" включить опцию "Link with runtime packages" и добавить QLocalRT в список.