Показать сообщение отдельно

  #4  
Старый 14.03.2008, 21:24
noobyara
Новичок
Регистрация: 27.01.2008
Сообщений: 13
С нами: 9625751

Репутация: 26
По умолчанию

Видимо правильнее сравнивать не возвращаемое значение, а его low word с индификатором раскладки. к примеру:
Код:
HKL hKl = GetKeyboardLayout(GetCurrentThreadId());
WORD id = LOWORD(hKl));

switch(id){
case 0x0419:break;//рус
case 0x0409:break;//анг
}
И если тебя надо знать раскладку только твоего приложения(с учетом того что оно однопоточное), используй GetCurrentThreadId() вместо GetWindowThreadProcessId()

и
Цитата:
The return value is the keyboard layout handle for the thread. The low word contains a locale identifier identifying the input language and the high word contains a device handle identifying the physical layout of the keyboard.

Последний раз редактировалось noobyara; 14.03.2008 в 21:34..
 
Ответить с цитированием