Карта сайтаСсылкиКонтакты

Строковые ресурсы для мульти язычных приложений

PDF Печать
Статьи

Для мультиязычных приложений, нужно добавить строковые ресурсы в файл ресурсов. Каждой строке назначают уникальный идентификатор. Затем Вы можете использовать строковые ресурсы в Вашем приложении при помощи функции LoadStr. Эта функция загружает строку из ресурсов исполняемого файла с идентификатором, передаваемой ей в качестве параметра. Загрузить строку можно так:


procedure TForm1.FormCreate(Sender: TObject);
begin
  { Загружаем строку с идентификатором 1001 }
   Button1.Text:=LoadStr(1001); 
end;

Посложнее будет, если пользователь хочет выбирать язык во время выполнения приложения. В этом случае, например, можно строки добавлять в строковые ресурсы по 100 или по 1000. Например, русский (1001, 1002, 1003 …), английский (2001, 2002, 2003 …), французский (3001, 3002, 3003 …). А выбирать строки можно так:


procedure TForm1.SetLanguage(lang: integer);
var
  AddToId: integer;
begin
  case lang of
    0: AddToId:= 1000;
    1: AddToId:= 2000;
    2: AddToId:= 3000;
  end;

  Caption:= LoadStr(AddToId + 1);
  Button1.Caption:= LoadStr(AddToId + 2);
  Label1.Caption:= LoadStr(AddToId + 3);
end;

Пример работающего приложения можно скачать здесь.


 

Добавить комментарий


Защитный код
Обновить