|
|
|
Создание БД для разноязычных пользователей
|
|||
|---|---|---|---|
|
#18+
Привет всем. Делаю разработку БД для разноязычных пользователей, возможно ли сделать так чтоб в зависимости от языка системы, подставлялся другой интерфейс. То есть если язык системы английский, то и интерфейс будет английским, если русский - то русским ну и т.д. Возможно ли это сделать стандартными способами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2005, 12:11:09 |
|
||
|
Создание БД для разноязычных пользователей
|
|||
|---|---|---|---|
|
#18+
да, возможно пишешь справочник - текст или таблицу и там для всего свои кэпшины (подробно описывать не буду как) дальше я делал так по умолчанию вссе англ. если в каталоге есть файл russian (if file("russian")), то начитываем из справочнике и подменяем в инитах формы кэпшины можно настроеку сделать комбик типа какой язык интерфейса и сохранять или в рееестр, либо в свои настройки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2005, 12:33:52 |
|
||
|
Создание БД для разноязычных пользователей
|
|||
|---|---|---|---|
|
#18+
#include my_caption.h в этот файл сандалишь все возможные тексты: #define _My_Ok "Да" #define _My_NO "Нет" #define _My_XZ "Может быть" и его при сборке подменяешь в зависимости от страны. А базу прилеплять не стоит, т.к. на ходу языки никто менять не будет. Еще учитывай что константы видимы только локально, вернее заменяются при сборке так что везде ставь #include а кнопки и прочие заменять можно хитрее например в init-е этй кнопки писать: #include my_caption.h This.Caption = _My_Ok тогда код будет сильно перегружен остальными дефайнами. Можно заменять все в Init формы, для этого нужно что бы все формы росли от единого типа который пробегает по контролам, смотрит знакомые типы и перекодирует caption-ы типа того: #include my_caption.h With this for i=1 to .controlsCount do case case .controls .class = 'xyz' .controls.caption = _xyz_caption case .controls.class = '....' .controls.caption = _...._caption otherwise * остальные не заменяем endcase endfor EndWith Хотя в реальности все еще закрученнее, но общая мысль надеюсь понятна :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2005, 13:55:38 |
|
||
|
Создание БД для разноязычных пользователей
|
|||
|---|---|---|---|
|
#18+
стандартными вероятно нельзя. Делать разные екзе для разных языков как-то неудобно я делал так: файл вида "ru","getValue","cbOK.caption","\<Выбрать" "eng","getValue","cbOK.caption","\<Select" "ru","mainToolBar","cbOpenTable.toolTipText","Открыть - F9" "eng","mainToolBar","cbOpenTable.toolTipText","Open - F9" т.е. язык, имя объекта, свойство, текст на каждую форму бросал класс который в init менял свойства родительского объекта макроподстановкой. Для тулбара и меню чуть сложней но тоже не ось новую написать языки можно добавлять просто добавляя в файл настроек пример на 3 языка - http://sss1024.narod.ru/ver.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2005, 15:16:40 |
|
||
|
Создание БД для разноязычных пользователей
|
|||
|---|---|---|---|
|
#18+
да, также можно любые свойства менять, например размер окон по умолчанию и пр. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2005, 15:19:22 |
|
||
|
Создание БД для разноязычных пользователей
|
|||
|---|---|---|---|
|
#18+
Hi Djeki! Google -> искать INTL - на сайте есть рекомендации. P.S. Eng+ любые языки на базе одной CP - просто. Если же надо разные CP использовать, причём одновременно - тогда всё заметно сложнее - тогда ищи в Google UNICODE+VFP - на сайте westwind была статья и какие-то примеры... Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2005, 01:17:18 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33354918&tid=1593142]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
181ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 456ms |

| 0 / 0 |
