|
возможность автоматической подстройки интерфейса
|
|||
---|---|---|---|
#18+
Здравствуйте... Такой вопрос... Хотела бы сделать в базе возможность автоматической подстройки интерфейса (надписи), в зависимости от выбора языка клавиатуры... Например, если запускаешь базу где по умолчанию стоит русский язык, то и интерфейс стоновится русским. Открываешь в компютере, где по умолчанию выставлен украинский язык, то и интерфейс становится украинским.... Спасибо... Александра ... |
|||
:
Нравится:
Не нравится:
|
|||
19.02.2008, 23:21 |
|
возможность автоматической подстройки интерфейса
|
|||
---|---|---|---|
#18+
Простейшее решение: 1. Сделайте табличку tblLangWords: ID Russia UnatedStates Ukraina1 НомерNumber ...2 Выход Exit ...3 Введите пароль Enter password ...............2001 Количество Quantity... 2. Каждому лейблу, который должен переводиться, пропишите в Tag нужный номер - 1, 2, 3, ... 3. На событие Load каждой формы поставьте: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
4. Создайте стандартный модуль и скопируйте туда нижеследующий код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79.
Все, можно играться... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2008, 03:04 |
|
возможность автоматической подстройки интерфейса
|
|||
---|---|---|---|
#18+
Хотя, если подумать, в функцию sCountry надо добавить проверку: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2008, 03:45 |
|
возможность автоматической подстройки интерфейса
|
|||
---|---|---|---|
#18+
%?*?%Простейшее решение: 2. Каждому лейблу, который должен переводиться, пропишите в Tag нужный номер - 1, 2, 3, ... Лишнее, однако, проще в таблице поле "Russia" сделать ключевым и вести замену поиском прямо по нему, используя русский интерфейс как основной. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Бонусы: 1. одинаковая фраза переводится только ОДИН раз и не надо помнить ID. 2. Можно сделать автодобавление текста в поле "Russia" и потом только перевести строчки... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2008, 06:49 |
|
возможность автоматической подстройки интерфейса
|
|||
---|---|---|---|
#18+
Аналогично не забыть обработать свойства StatusBarText, ValidationText, ControlTipText контролов форм, свойства Caption кнопок, ярлыков вкладок Tab-контролов, списковые источники строк лист- и комбобоксов и т.п.. Плюс, само-собой, пункты меню - подписи и подсказки для кнопок кустомных тулбаров (ну если все это есть). Вообще ИМХО, если после установки приложение будет использоваться на одном языке, то можно даже делать процедуру такой замены НЕ каждый раз на ходу, а однократно после установки - перебрав все объекты трансляции (открывая макет в дизайне) и заменив статические тексты на языковые аналоги по таблице строковых ресурсов. Потому что есть еще отчеты, могут быть запросы, содержащие статический текст - много может быть, зачем закладывать лишние перманентные затраты на такую обработку. Единственное, что можно делать на ходу - это программная генерация текстов сообщений выдаваемых из кода. Точнее даже не генерация, а просто динамическое получение нужного текста на текущем языке. Для этого любые строковые константы из VB-кода придется убрать и вынести их в общую таблицу строковых ресурсов, присвоить им коды и по этим кодам получать текст на нужном языке (можно просто заменить стандартный MsgBox на свою функцию, где все это сделать). ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2008, 08:58 |
|
возможность автоматической подстройки интерфейса
|
|||
---|---|---|---|
#18+
Уточнение Karfaqen любые строковые константы из VB-кода придется убратьНу имеются ввиду, конечно, строки текста, участующие в интерактивных процессах в качестве текста, предназначенного для чтения пользователем - т.е. как минимум строки сообщений, заголовки для MsgBox, InputBox, а также любые программно-формируемые строки текста для форм, отчетов, и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2008, 09:06 |
|
возможность автоматической подстройки интерфейса
|
|||
---|---|---|---|
#18+
Небольшой пример ко всему вышеизложенному Пример реализации мульниязычного интерфейса в ACCESS ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2008, 10:36 |
|
|
start [/forum/topic.php?fid=45&gotonew=1&tid=1644885]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
96ms |
get topic data: |
11ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 10ms |
total: | 202ms |
0 / 0 |