Вниз
Скачать: CL | DM;

Многоязычная программа   Найти похожие ветки 

← →
Knoxville   (2005-01-23 20:31) [0]

Подскажите пожалуйста где лучше хранить все языки программы (рус, укр, анг) и как их правильно загружать? Я хранил языки отдельных ini замаскированых под *.lng, но при загрузке большого кол-ва текста выдавалась ошибка (access violation вроде-бы).
Спасибо всем!


← →
Юрий Зотов ©   (2005-01-23 20:39) [1]

Хранить - где угодно (ini, xml, dll, IStorage и пр.).
Как загружать - зависит от того, где хранится.
Access Violation - дело было не в бобине, как говорят шоферы...


← →
Knoxville   (2005-01-23 20:45) [2]

А с XML как работать?


← →
Поручик ©   (2005-01-23 21:03) [3]

А где можно почитать про принцип работы, смутно это представляется


← →
Knight ©   (2005-01-23 21:10) [4]

А объясните коротко использование - Project/Languages/Add...


← →
Поручик ©   (2005-01-23 21:21) [5]

Я автопилоту не доверяю, как это в ручную делается?


← →
Поручик ©   (2005-01-23 21:21) [6]

в VC++ нету Project>languages>add


← →
KilkennyCat ©   (2005-01-23 21:28) [7]

Если не ошибаюсь, у RxLib есть пример.


← →
Knight ©   (2005-01-23 21:31) [8]


> [5] Поручик ©   (23.01.05 21:21)
> Я автопилоту не доверяю, как это в ручную делается?

Я делал, так... создавал набор переменных типа
BTN_OK, MF_MM_ADD_ITEM и т.п.
а потом подгружал значения из выбранной dll-ки
если таковой не было, то присваивал по-умолчанию значения на английском...
А вообще... как придумаешь, так и делается... %)


← →
Поручик ©   (2005-01-23 21:47) [9]


> Я делал, так...

Я так и представлял, только в тумане =)


← →
Anonimus ©   (2005-01-23 22:07) [10]

Копай в сторону Application.Components. Пишешь прогу на каком угодно языке (англ, рус....) Далее юзаешь Component.Name, If <ComponentName> Is <ComponentType> then <ComponentName> as <ComponentType> do <ComponentName>.<Text/Caption/Hint/....> := ....
Муторное дело. Мож кто знает готовый компонент.

Я для начала экспортировал тексты со всех компонентов в текстовый файлик, потом потом загружал оригинальный/переведенный файл. Посмотри как Опера сделана. А вообще при таком подходе можно пару процедур универсальных сделать и горя в последствии не знать. Тока со сторонними компонентами траблы будут....


← →
Anonimus ©   (2005-01-23 22:09) [11]

ЗЫ забыл. Перебираешь все компоненты в цикле, а если  текущий компонент может содержать дочерние - то рекурсия. Ни и для TreeView & подобных - своя обработка.

Сорри если немного путано. :) Вечер уже.


← →
atruhin ©   (2005-01-24 08:59) [12]

В EhLib есть очень удобный компонент PropStorageEh позволяет сделать это автоматически, выбираешь какие свойства компонентов сохранить и все. После этого полученный ini файл переводиш на любой язык. Загружать будет сам компонент по автомату



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.024 c
4-1103014059
alex870
2004-12-14 11:47
2005.02.06
Ловушки


1-1106414061
ninja
2005-01-22 20:14
2005.02.06
раздражающие звуки


1-1106725259
ShimON
2005-01-26 10:40
2005.02.06
Отследить выход из Windows


14-1105739482
Ломброзо
2005-01-15 00:51
2005.02.06
Экскурс в Java


3-1104398587
Georji
2004-12-30 12:23
2005.02.06
Извлечение месяца




   Наверх