[Delphi] Интерфейс на нескольких языках
www.sources.ru в Дельфи форуме есть FAQ от Vit'а (5 метров) [можно и on-line на форуме]- там вроде какая то понтовая технология была написана. А вообще можно все с нужного (по языку) ini-файла читать. Кажется так.
На По поводу ини-файлов - это как у фара - .lng файлы - это я знаю.
Вот только как бы это на лету переписывать у всех контролов.. и чтобы правильно. надо какие-то идентификторы на контролы вешать - тэги чтоли использовать.. а если у меня тэг уже используется? - в общем, надо думать.
Делаешь текстовый файлик КОНТРОЛ=ТЕКСТ
Ну и дальше понятно...
Альтернативно, можно распарсить xml-файлик... (так многоязычность во флеше делается)
А нельзя длл-ку подкачать с ресурсами? И её менять, если надо сменить язык?В Дельфе, начиная, кажется, с 5й, так и делается. Там специальный ресурс-длл-визард для этой цели.
О! это уже интересно. как им пользоваться? что-то я в хелпах не могу сообразить - половина ссылок идут в никуда (The topic you requested is either not available or not linked to help system.. blablabla)
Я им сам никогда не пользовался. Но думаю, там всё просто. Меню Файл-Нью...-Реурс ДЛЛ Визард. Есть ресурс дллки и в примерах. Я глядел и сразу всё понял. Правда, давно это было, поэтому не помню уже, как там что делать.
Я делал совю компоненту локализации большой дельфийской программы. Идея такая: в цикле по компонентам формы определять тип компоненты через RTTI-функции. И если нашел в базе запись про эту компоненту (например, 'Button1.Caption', 'ToolButto1.Hint' то через RTTI-функции устанавливаются им значения на заданном языке из базы. Если не нашел, то записать в базу значение соответствующего property таким, какое оно в design time одинаковое на всех языках.
Оставить комментарий
yolki
Как наиболее оптимально сделать такую вещь?Какие есть компоненты?
Программа небольшая: десяток пунктов меню, контролов, кнопочек
полсотни информационных сообщений (MessageBox-ы, файл протокола)