zenon ЛР10: Мультимовна підтримка

Матеріали курсу Людино-машинні інтерфейси

zenon ЛР10: Мультимовна підтримка

ЗМІНА МОВИ

Під поняттям інтернаціоналізації ми розуміємо можливість системи керування в онлайн режимі представляти користувацький інтерфейс в зрозумілій для оператора формі, незалежно від країни в якій експлуатується проект. В нашому прикладі ми розглянемо питання зміни мови тексту проекту, а також конвертування одиниць вимірювання представлених змінних.

Технологія перемикання мови дозволяє змінювати мову будь-якого тексту в Runtime (підписи елементів, граничні тексти, ідентифікатори змінних), записи списків тривог, подій, стандартні діалоги, змінювати при перемиканні використовуваний шрифт, медіа-файли.

Мовне перемикання здійснюється на базі сформованих в проекті мовних таблиць. Для кожної мови створюється своя таблиця, яка містить відповідники до оригінальних текстів проекту.

Текст, який підлягає перекладу позначається на початку ключовим символом ‘@’.

При перекладі фрази дозволяється використання декількох символів ‘@’ для розділення тих слів, які ми хочемо перекладати, а які ні.

Наприклад: @Користувач@ Олександр

Слово між першим і другим символом перекладеться, а останнє – ні. Сам ключовий символ на екрані не відображається.

Давайте зробимо так, щоб оператор міг в онлайн режимі перемикати мову тексту ‘Мій перший проект’ на екрані процесу, а також підписи кнопок на панелі навігації. Переклад будемо здійснювати з української на англійську.

Додавання ключового символу

**Завдання 11.1: Створіть мультимовний текст на екрані.****

img

Створення мовних таблиць

****Завдання 11.2: Створіть мовні таблиці******

img

На даному етапі у вікні детального перегляду повинно бути чотири колонки мовних таблиць: Keyword - слово чи вираз, який починається з символу ‘@’, ZENONSTR.TXT – створюється та завантажується системою автоматично, мовна таблиця ‘UA’ та ‘EN’.

img

Поступово заповнимо рядки таблиць.

Цей запис автоматично розповсюдиться на усі колонки

Після заповнення мовна таблиця повинна мати наступний вигляд:

img

Для швидкого перекладу слів мовну таблицю можна експортувати в текстовому форматі та обробити зовнішньою програмою – мовним редактором.

Для кожної мовної таблиці в Runtime-файлах проекту система створює свій мовний файл (ZENONSTR.TXT,* *UA.TXT* *та* *EN.TXT). Також, в дереві проекту, розділ Files**, система створила мовні папки для наповнення їх відповідним контентом.

Керування перемиканням

****Завдання 11.3: Створіть функції перемикання мови та кнопки для виклику цих функцій******

Для ініціації зміни мови нам необхідно створити відповідні функції та кнопки на панелі навігації.

img

img

Запустіть проект і виконайте перемикання. Проконтролюйте зміну мови.

Наша навігаційна панель тепер повинна мати наступний вигляд:

img

Якщо потрібно, щоб відразу проект запускався на мові, відмінній від тієї на якій його зроблено, то необхідно функцію перемикання вставити в скрипт автозапуску.

У великих проектах дуже довго вручну складати мовні таблиці. Для полегшення цього процесу в систему керування інтегровано спеціального майстра-помічника, який в автоматичному режимі виконає задачу збору всіх текстів в проекті та додавання до них ключового символу.

В папці Language Table ви знайдете помічника Language Table Wizard.

img

Спробуйте самостійно за його допомогою крок за кроком створити мовні таблиці проекту.

Зміна одиниць вимірювання

Існують випадки, коли для зручності представлення вимірюваних величин, їх необхідно відображати в різних одиницях. Наприклад, тиск можна представляти в барах чи паскалях, або температуру в цельсіях чи фаренгейтах.

****Завдання 11.4: Зробіть можливість вибору оператором різних одиниць вимірювання.******

В нашому проекті є змінні температури, тому ми зробимо так, щоб оператор міг кнопками перемикати одиниці вимірювання з °С на °F.

Тепер нам необхідно задати коефіцієнт перерахунку виміряної величини. Відоме наступне співвідношення конвертації одиниць:

1 градус Фаренгейта = 1 градус Цельсія *1.8+32

img

Керування перемиканням

Для ініціації зміни одиниць вимірювання необхідно створити відповідні функції та кнопки на панелі навігації.

img

img

Щоб конвертація запрацювала, необхідно вказати до яких змінних вона стосується.

Запустіть проект і перевірте як працює система конвертації одиниць вимірювання.

Докладніше про зміну мови можна прочитати в мануалі Language switch.

Докладніше про вбудованих в систему майстрів-помічників (не тільки про мовний) можна прочитати в мануалі Wizards.

Докладніше про зміну одиниць вимірювання можна прочитати в мануалі Measuring unit conversion.