Форум: "Основная";
Текущий архив: 2003.06.05;
Скачать: [xml.tar.bz2];
ВнизОдин код для нескольких форм Найти похожие ветки
← →
AlexKa (2003-05-23 14:45) [0]Может кто сталкивался, как сделать сабж? Содержимое форм разумеется одно и то же, различается только язык. Можно ли такое сделать?
← →
Palladin (2003-05-23 14:47) [1]Можно, но только не так как ты задумал, это уже изврат, сам себе яму роешь при добавлении нового элемента, его нужно и туда и туда чтоли? Не умрешь от тоски?
← →
AlexKa (2003-05-23 15:55) [2]Ну может и изврат, только как сделать-то по другому? Что-то больше ничего не приходит на ум.
← →
Palladin (2003-05-23 16:00) [3]Project\Languages\Add
← →
Владислав (2003-05-23 17:08) [4]Так и не понял, чего ты хочешь сделать...
Тебе нужна локализация программы? Программа для разных "человеческих" языков?
При чем здесь код формы тогда?..
← →
AlexKa (2003-05-23 18:22) [5]Нужно иметь две версии проги, которые жестко привязаны к своему языку, например, русская версия и английская, без возможности локализовать друг друга.
← →
Sandman25 (2003-05-23 18:40) [6]Можно хранить константный массив со строками и перед компиляцией изменять одну константу, например LANG.
type TLanguage = (lgRus, lgEng);
TElement = (elOK, elMainFormCaption, {...});
const LANG: TLanguage = lgRus;
type El: array[TLanguage,TElement] of string =
(("Да","Yes"),("Печать документов","Document printing"){...});
При инициализации программы загружать свойства.
FMainForm.Caption := El[LANG,elMainFormCaption];
При необходимости отобразить какое-либо сообщение - аналогично.
ShowMessage(El[LANG,elDisplayWarning]);
← →
Sandman25 (2003-05-23 18:44) [7]Перед описанием El слово type нужно убрать, конечно.
← →
AlexKa (2003-05-23 18:57) [8]Спасибо, попробую сделать что-нить в этом духе.
← →
Юрий Федоров (2003-05-23 19:25) [9]См. Palladin © (23.05.03 16:00)
← →
Юрий Зотов (2003-05-23 21:04) [10]> Можно хранить константный массив со строками
А можно и просто строки. В DLL, в виде ресурсов. А загружать их через LoadString.
Для каждого языка - своя DLL. Какую загрузишь - такой язык и получишь. Хоть на лету его меняй. И при этом, сколько бы языков ни поддерживалось, в EXE не меняется ни одной строчки. Его даже можно вообще не перекомпилировать.
Это и есть нормальная, профессиональная локализация.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.06.05;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c