PDA

Просмотр полной версии : Ввод текста на русском в WEB_визуализации



Alser69rus
14.04.2014, 11:59
Здравствуйте!
Требуется ввести текст на русском в переменную типа WSTRING, с клавиатуры компьютера. Почитав форум набросал следующее:

PROGRAM PLC_PRG
VAR
sName:STRING:='';
wsName:WSTRING:="";
pt1:POINTER TO STRING;
pt2:POINTER TO WSTRING;

END_VAR

pt1:=ADR(sName);
pt2:=ADR(wsName);
ASCII_TO_UNICOD2(p_STR_IN:=pt1 , p_STR_OUT:=pt2 );

Здесь sName - переменная, которую вводим по событию OnMouseClick, wsName - переменная, которую отображаем. Две переменные нужны затем, что в поле edit нельзя вводить WSTRING.
В режиме эмуляции и при вводе текста в окне CoDeSys все работает замечательно. При этом в окне браузера с подключенной визуализацией, тоже все хорошо. Но при попытке кликнуть на поле ввода в браузере уже введенный текст превращается в крокозяблы, а при вводе текста в поле ввода в браузере - в вопросительные знаки.

UPD1: Посмотрел коды символов, введенных с клавиатуры - 63. Т.е. это не проблема вывода символа с неизвестной кодировкой, а именно проблема ввода русского текста. В процессе ввода, русского алфавита заменяются на знаки вопроса.

UPD2: Попробовал использовать псевдошрифт для поля ввода. Это конечно кривая тропка через задний вход, но на самый крайний случай сойдет. Из плюсов - текст на русском можно ввести. Из минусов - требуются танцы с бубном для преобразования текста к читаемому виду.

UPD3: В соседней ветке есть пример русской виртуальной клавиатуры. Но без ссылки. http://www.owen.ru/forum/showthread.php?t=16887
Как запасной вариант. Поскольку виртуальная клавиатура очень неудобна для ввода текста.

Вопрос классический - кто виноват и что делать. Можно ли ввести русский текст в браузере в web-визуализации, чтобы потом можно было с ним работать?

Дополнительный вопрос 1: имеются ли псевдошрифты, в которых символы заменяются согласно клавиатурной раскладке, т.е. - "QWERTY"="ЙЦУКЕН"? (Arial_KOI8 не подходит - символы не совпадают)

Дополнительный вопрос 2: у кого нибудь есть виртуальная клавиатура с русскими буквами И цифрами? (что делать если необходимо ввести номер изделия содержащий цифры и русские буквы? Стандартная клава предлагает латиницу ИЛИ цифры. В FAQ'е смотрел - ответа на тему нет)

Дополнительный вопрос 3: Может возможно изменить что-то в стандартных библиотеках визуальных элементов, чтобы можно было вводить в edit юникод?