Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.043 c
2-1165897576
Монг
2006-12-12 07:26
2006.12.31
Работа с датой.


2-1165930015
oleglu
2006-12-12 16:26
2006.12.31
DBGrid


2-1165900730
Данил.Ялта
2006-12-12 08:18
2006.12.31
Большие *.тхт


2-1165821434
makvell
2006-12-11 10:17
2006.12.31
справочная система


15-1166058481
Бугага
2006-12-14 04:08
2006.12.31
«Черную дыру» поймали с поличным





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский