Текущий архив: 2005.02.06;
Скачать: 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 вся ветка
Текущий архив: 2005.02.06;
Скачать: CL | DM;
Память: 0.49 MB
Время: 0.076 c