Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 19.01.2008, 22:20
ElLamok вне форума Посмотреть профиль Отправить личное сообщение для ElLamok Найти все сообщения от ElLamok
  № 1  
Ответить с цитированием
ElLamok

Регистрация: Oct 2006
Сообщений: 60
По умолчанию Локализация приложений

Это не совсем локализация, но все же.
Есть необходимость менять форматирование чисел автоматически ( в зависимости от локали ) или используя параметр, например, ResourseBundle.

К примеру, в России заказчики хотят видеть число 1/2 ввиде "0.5", а в буржундии "0,5".

Использовать NumberFornatter и прочее очень затруднительно, если вообще возможно, тк не всегда можно получить ссылки на все текстовые поля всех компонентов, а как написать универсальную утилиту пока не пришло в голову.
Вообще, судя по региональным и языковым настройкам в панели инструментов, форматирование должно автоматически происходить.
Вопрос1 - так ли это?
Вопрос2 - как можно изменить форматирование в ручную? и как потестить

ЗЫ: Вообще в строку компилятора передается параметр -locale, но изменение его на -locale ru_RU ни к чему не привело. Хотя бы трейс Capabilities.language выдает en, а в региональных настройках все опции выставлены в Russian

Спасибо

Старый 20.01.2008, 01:39
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от ElLamok
К примеру, в России заказчики хотят видеть число 1/2 ввиде "0.5", а в буржундии "0,5".
Это в буржундии точка, а у нас запятая должна быть.

Старый 20.01.2008, 14:04
ElLamok вне форума Посмотреть профиль Отправить личное сообщение для ElLamok Найти все сообщения от ElLamok
  № 3  
Ответить с цитированием
ElLamok

Регистрация: Oct 2006
Сообщений: 60
Смысл в том, что надо уметь в зависимости от локали менять форматирование числа. Возможно это как-то автоматически осуществить - без использования ручного форматирования чисел, например, статическую переменную где-нибудь задать ?

Старый 20.01.2008, 16:44
Sneg вне форума Посмотреть профиль Отправить личное сообщение для Sneg Найти все сообщения от Sneg
  № 4  
Ответить с цитированием
Sneg
 
Аватар для Sneg

Регистрация: Oct 2005
Адрес: Russia, Moscow
Сообщений: 316
Отправить сообщение для Sneg с помощью ICQ
Навскидку можно предложить такое решение:
1) в модели хранится класс (синглетон, наследуется от EventDispatcher'a), который отвечает за изменение языка и параметром currentLanguage
2) при изменении currentLanguage он шлет сообщения LanguageEvent.CURRENT_LANGUAGE_CHANGE
3) поскольку это синглетон, то подписаться к нему можно из любого места, и все классы (компоненты) которым это важно подписываются на это сообщение и вызывают соответственно, какой-нибудь NumberFormattersUtils.formatNumber(number:Number,languageName:String):String
для изменения, зависящих от языка парметров

Минусы: растет связанность кода и использование синглетонного диспетчера сообщений и отлов событий от него в произвольных местах программы не очень хорошо.
Поэтому если есть класс типа ValueObject c полем value:String которое должно зависеть от языка, лучше унаследоваться от него для добавления такого функционала.

Старый 21.01.2008, 19:39
ElLamok вне форума Посмотреть профиль Отправить личное сообщение для ElLamok Найти все сообщения от ElLamok
  № 5  
Ответить с цитированием
ElLamok

Регистрация: Oct 2006
Сообщений: 60
Координально другого решения я тоже не придумал. Все равно придется везде следить за форматированием каждом компоненте и при каждом выводе, что очень плохо в условиях проекта.

Но все равно, большое СПАСИБО

Старый 21.01.2008, 20:24
Sneg вне форума Посмотреть профиль Отправить личное сообщение для Sneg Найти все сообщения от Sneg
  № 6  
Ответить с цитированием
Sneg
 
Аватар для Sneg

Регистрация: Oct 2005
Адрес: Russia, Moscow
Сообщений: 316
Отправить сообщение для Sneg с помощью ICQ
Не при выводе, а при смене языка... что само по себе бывает достаточно редко - юзер же как правило по 10 раз на дню язык не меняет.

Старый 21.01.2008, 20:46
baron27 вне форума Посмотреть профиль Отправить личное сообщение для baron27 Посетить домашнюю страницу baron27 Найти все сообщения от baron27
  № 7  
Ответить с цитированием
baron27
Контрибьютор базы знаний по Флекс
 
Аватар для baron27

Регистрация: Aug 2005
Сообщений: 690
почитай про resourcebundle
__________________
Flex 2 и Co

Создать новую тему Ответ Часовой пояс GMT +4, время: 10:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 10:32.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.