Перейти к содержанию
  • 0
Schekhovtsov

Как определить выбранный на устройстве язык?

Вопросы

Чтобы если был выбран английский, приложение включало пресет английского. Собственно, нужен какой-то способ определения активного языка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

 Для Android:

uses FMX.Platform;
.........
var ls: IFMXLocaleService;
    lang: string;
begin
    if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(ls)) then lang:=ls.GetCurrentLangID;

В зависимости от языка переменная lang примет значения 'en', 'ru' и т.д.

 

либо просто: 

lang:=copy(SysLocale.DefaultLCID,1,2);

В этом случае нужен модуль System.SysUtils. 

Первый вариант, насколько я помню, выводит региональный код, а второй - код языка. В большинстве случаев они совпадают, но для  стран, в которых говорят на одном языке, они отличаются. Первый вариант возвратит код страны, второй - код языка. 

Отредактировал Alex7wrt

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Похожий контент

    • От giveaway
      Формирую документ для печати и хочу в него добавить программно некий текст, фигуры и изображение. Вот кусок кода:
      TRectF RectF(10, 10, 30, 30); BitmapTmp->Canvas->DrawRect(RectF, 0, 0, AllCorners, 100); BitmapTmp->Canvas->FillText(RectF, ImageSel->Name, false, 1, TFillTextFlags() << TFillTextFlag::RightToLeft, // TFillTextFlags(), TTextAlign::Center, TTextAlign::Center); Прямоугольник отрисовывается нормально, а текст не отображается. Что я делаю не так?
    • От Сергей Сергеев
      Привет! Как сделать "бегущую строку" в TLabel  или TEdit - длинный текст, если не влазит в отведенное место по ширине, то авто скролл горизонтальный..
      пробовал через добавление TFloatAnimation в CustomStyle к свойству Text, изменяя position - ничего не происходит, пробовал Font.Size  менять ( для проверки - а вообще оно работает?) тоже ничего не происходило.
      Запускаю в Win, а нужно  вообще для Androiod и Ios.
       
    • От Денис Демин
      Здравствуйте, есть такая задача:
      1) Необходимо вставить карту от Яндекса на форму.
      2) Необходимо вставить информацию текстовую (информация о доставке или оплате), это можно также вставить HTML кодом, а лучше просто отформатированным содержанием. 
      Заранее спасибо всем за ответы.
    • От SkOle
      Добрый день, подскажите, как подружить TLang и TEdit.Textprompt? TLang ни в какую не хочет сканировать строки, а добавление в ручную ничего не дает Заранее, спасибо
    • От Mars M
      Второй день голову ломаю, без помощи не обойтись 
      Делаю компонент, что то типа таблицы, нужно добавлять колонки и что бы они отображались в редакторе как вложенные в основной компонент.
      Вот как например у стринггрида

      Нужно разумеется не для красоты а что бы редактировать их свойства.
      Если можно пример в виде кода или хоть в какую сторону смотреть.
    • От DJ VK
      Как поддержать разные названия месяцев и дней недели календаря для разных языков?
    • От Вячеслав Холод
      Проблема такая, создаю динамически Label и нужно выровнять текст внутри по центру самой метки. 
      Пробовал: 
          with LabelG do
          begin
            StyledSettings := [];
            LabelG.TextSettings.Font.Family:='Century Gothic';
            LabelG.TextSettings.Font.Size:=14;
            LabelG.TextSettings.FontColor:=TAlphaColorRec.Aliceblue;
       -->  LabelG.TextSettings.HorzAlign.taCenter; (И :=taCenter и что только не пробовал)
          end;
       
      Помогите пожалуйста.
    • От delphiex
      Всем доброго дня. Прошу помочь, любая малейшая подсказка прояснит ситуацию. Сделал русскоязычное Андроид приложение на Delphi XE8.  Использовал SQlite в своем проекте. Работает отлично, оттестировал на Android 6.0 и  Android 4.5 на двух разных аппаратах. Прежде чем делать мультиязычное приложение, решил проверить как оно будет работать, если язык системы будет отличным от русского. Поставил английский-United Kingdom и приложение не запустилось, вернее пошла заставка, после нее  приложение просто закрылось без ошибок. То же самое при французском, испанском системных языках. А вот при немецком и украинском языке системы - работает. В чем здесь дело никак не могу понять и куда копать. Приложение не могу предоставить - слишком большое.
    • От Mazzay
      Сделал выбор числа месяца скроллингом (как это реализовано на устройствах Apple). Для наглядности вот рабочий пример: https://youtu.be/F73fCMSlL7I.
      Но для красоты картины не хватает вывода заворачивающихся чисел в перспективе:

      Как сие реализовать?
    • От petyaas
      procedure TForm2.Button1Click(Sender: TObject); var frec:trectangle; begin frec:=trectangle.Create(self); frec.Parent:=rectangle1; frec.Name:='frec_1'; frec.Align:=talignlayout.Top; end; procedure TForm2.Button2Click(Sender: TObject); var dfrec:trectangle; begin dfrec:=form2.FindComponent('frec_1') as trectangle; dfrec.Free; end; в виндовсе удаляет
      в андроиде не удаляет
      как удалить компонент в андроиде?
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...