Delphi 5 предоставляет новые удобные средства создания приложений в различных языковых версиях. Для создания таких приложений используется набор средств под общим названием International Translation Environment.
Проиллюстрируем эти возможности на простейшем примере. Предположим, нам нужно создать приложение, существующее в русской и английской версии. Создадим новый проект, состоящий из одной формы с несколькими интерфейсными элементами, и сохраним его:
Далее выберем из главного меню опцию Project/Language/Add. В результате будет запущен эксперт, предлагающий последовательность форм, в которых следует выбрать поддерживаемые проектом языки (рис. 11).
Рисунок 11. Эксперт для создания многоязычных приложений
В результате будут созданы два дополнительных проекта динамически загружаемых библиотек, содержащих строковые ресурсы для двух языков, и автоматически запущен Translation Manager (рис. 12).
Рисунок 12. Проект приложения, имеющего две языковые версии
Translation Manager представляет собой, по существу, редактор строковых ресурсов, которые могут присутствовать в форме. В нем отображены сведения о тех свойствах интерфейсных элементов, которые могут быть различными в различных языковых версиях приложения. В числе этих свойств - не только свойства типа Caption или Text, но и иные визуальные характеристики, например, Height и Width. Помимо этого, в строковых ресурсах присутствуют и стандартные строки (названия дней недели и месяцев, сообщения об ошибках, названия общеупотребимых кнопок типа "Yes", "No", "Cancel", "Help", и др.).
Отредактируем в нашем примере названия интерфейсных элементов (рис. 13).
Рисунок 13. Translation Manager
Теперь мы можем выбрать опцию Project/Languages/Set Active и выбрать один из доступных языков. Скомпилировав приложение, получим нужную языковую версию (рис. 14).
Рисунок 14. Две языковых версии одного приложения
При поставке такого приложения следует не забыть скопировать в его каталог один из двух скомпилированных файлов ресурсов, имеющих в нашем случае расширения *.ENU и *.RUS и имя, совпадающее с именем исполняемого файла.
Отметим, что языковые версии строк можно сохранить в специальном хранилище (так называемомTranslation Repository - репозитарии переводов) и загружать из него. Данный репозитарий является разделяемым, что позволяет использовать его при групповой работе.