Вниз
Скачать: CL | DM;

Как узнать изменение раскладки клавы?   Найти похожие ветки 

← →
Stunt   (2006-12-12 20:19) [0]

Имеется текстовый файл с единственной строкой, в нем есть русские и буржуйские символы, как узнать изменилась ли раскладка клавы при переходе с предыдущего символа на следующий + нужно узнать об изменении регистра


← →
Desdechado ©   (2006-12-12 20:29) [1]

Если буржуйские с умляутами, то там раскладкамогла с французской на немецкую перейти. Это в расчет берется?
Можно проверять символы на вхождение в определенный диапазон кодов: больших/маленьких, русских/немецких/американских...


← →
Stunt   (2006-12-12 20:31) [2]

Нет, буржуйские - значит на инглише

Как их проверять на вхождение в диапазон кодов?


← →
alex810 ©   (2006-12-12 20:32) [3]


if GetKeyboardLayout(GetWindowThreadProcessId(GetForegroundWindow, nil)) = 67699721 then
 //раскладка английская
else
 //раскладка НЕанглийская, например 68748313 соответствует русской

Узнать текущую раскладку клавиатуры в любом активном окне
возвращает числовое значение соответственно установленной раскладке


← →
$Pl@Sh ©   (2006-12-12 20:34) [4]


> alex810 ©   (12.12.06 20:32) [3]


мне не надо в активном окне, мне требуется в текстовом файле :-)
мож я что не понимаю


← →
alex810 ©   (2006-12-12 20:37) [5]

Извеняюсь до конца не дочитал вопрос.


← →
$Pl@Sh ©   (2006-12-12 20:37) [6]

Блин, засветился :-)


← →
Zeqfreed ©   (2006-12-12 20:47) [7]

В файлах не бывает раскладки. Если я правильно понял, то что-то навроде:

const
 eng = ["a".."z","A".."Z"];
 lower = ["a".."z","а".."я"];
...
 if ((str[i] in eng) <> (str[i - 1] in eng)) then ShowMessage("Languages differ");
 if ((str[i] in lower) <> (str[i - 1] in lower)) then ShowMessage("Registers differ");


Это как самый примитивный вариант. Ещё кажется были встроенные ф-ции типа IsUpper/IsLower/IsAlpha, можно посмотреть в их сторону.


← →
alex810 ©   (2006-12-12 20:55) [8]


> В файлах не бывает раскладки

Правильно. Может кодировку?


← →
Zeqfreed ©   (2006-12-12 20:59) [9]


> Правильно. Может кодировку?

Не-а. Ещё одна попытка :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.028 c
11-1131454344
algambra
2005-11-08 15:52
2006.12.31
замены системных модулей


1-1163360090
RASkov
2006-11-12 22:34
2006.12.31
"Всплывающее окно"


2-1165744656
FIL-23
2006-12-10 12:57
2006.12.31
программно узнать где находится прога или как открыть файл :)


15-1166046445
sat
2006-12-14 00:47
2006.12.31
задача нужны идеи


15-1165530445
vuk
2006-12-08 01:27
2006.12.31
Вопрос для Torry.




   Наверх