2010-12-06 1 views
1

Я подумываю об обновлении наших Delphi2006-проектов до Delphi XE. Эффект от этого будет заключаться в том, что Unicode используется вместо ANSI.Delphi Unicode Определить культуру независимо от пользовательских настроек

В .net-framework Я могу использовать CultureInfo в потоке, чтобы определить форматирование приложения независимо от пользовательской настройки (приложение недостаточно зрело, чтобы поддерживать все формы (наследие, наследие, наследие). нет намерения сделать это.). Позволяя приложению/потоку определить форматирование, я хотел бы иметь возможность делать это с помощью Delphi. Как это может быть достигнуто?

+1

синдром Лисса (начало (затем другое) (другое) (не забывайте (закрывая все)) правильно) :) – none 2010-12-06 10:15:17

ответ

1

Прежде всего, пожалуйста, сделайте различие (источник: Википедия) между:

  1. Интернационализация (i18n) является процесс проектирования программного приложения таким образом, что он может быть адаптирован к различным языкам и регионам без техники изменения.
  2. Локализация (L10) - это процесс адаптации интернационализированного программного обеспечения для определенного региона или языка путем добавления компонентов, специфичных для локали, и перевода текста.

Для i18n, вы будете использовать либо Delphi ITE/ETM GetText или другой бесплатно или оплачиваемый инструмент (как ours).

Но ваша мысль о L10, то есть локализации. Существует some documentation in the EMB site, но это звучало для меня как немного запутанное i18n и L10, даже если оба определения цитируются в статьях.

С первой версией Delphi, вы посвятили функцию и переменные в модуле SysUtils:

  • TFormatSettings является типом записи, который может быть использован для получения параметров L10 (существует только в новых версиях Delphi) ;
  • FormatSettings который является глобальной переменной, которая может использоваться для извлечения (или установки) текущих настроек формата по умолчанию;
  • FormatDateTime, который может использоваться для принудительного использования других настроек формата;
  • Format является основной функцией для формирования некоторых данных (с валютой или десятичной до текстовых настроек), и есть перегруженная версия, которая поддерживает TFormatSettings.
  • Вы можете использовать TFormatSettings.Create (на новом Delphi) или старый добрый (устаревший) GetLocaleFormatSettings, который заполняет некоторые глобальные переменные.
Смежные вопросы