Показать сообщение отдельно
  #7  
Старый 13.08.2010, 09:20
Vocabulary Vocabulary вне форума
Новичок
 
Регистрация: 17.09.2009
Сообщения: 85
Репутация: 9
По умолчанию

Если бы проблема была только в том, где хранить и как доставать переводы при многоязыковой поддержки своего приложения.
Это то как раз и не проблема - способов придумано множество и легко найти наиболее для себя подходящий.

Проблема в разной длине строк, которые занимают на форме переводы одного и того понятия.
Что никогда не видели ламерские переводы ломаных программ (игрушек ли), где надписи не помещаются на форме, вылезают за границы кнопок, залезают друг на друга и т.п.?
Да, конечно, приведенный roamer'ом пример прост и реализуется так же просто. Достаточно сделать ширину кнопки чтобы помещалась надпись на русском "Привет". Тогда и "Hello" тоже разместиться. Но, к сожалению, этот пример действительно прост и не может рассказать о других сложностях при размещении компонентов на форме.

Хочу сказать, что многоязыковая поддержка должна решаться комплексно. С учетом максимальной длины надписей на разных языках.
А это требует некоторой смелости и труда в пересмотре размещения компонентов.
При условии, что вам не безразлично как будет выглядеть ваша прога на разных языках.

Может показаться, что самый "длинный язык" это русский и по надписям на нем можно определить максимальную ширину нужного компонента.
Ан, нет. Бесспорно, он один из длинных, но из тех какие встречались немецкий немного "длиннее".
А для меток (Label's) есть еще одна засада. Переводы на разных языках предложений, которые бывают в метках на форме могут отличаться по длине и в два раза. Тоже надо учитывать.
"Механический" подход к реализации многоязыковой поддержки приведет к тому, что ваша программа будет выглядеть как будто пришла из прошлого века.
Ответить с цитированием