Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.09;
Скачать: CL | DM;

Вниз

Раскладка клавиатуры   Найти похожие ветки 

 
Broot   (2002-02-01 11:57) [0]

Подскажите, как сделать в своей проге индикатор раскладки клавиатуры. Существует ли системное событие, связанное с переключением раскладки? Существует функция GetKeyboardLayoutName, но не хотелось бы опрашивать состояние клавы по таймеру.


 
IronHawk ©   (2002-02-01 12:13) [1]

Узнаешь по каким кнопкам в системе меняеться раскладка и опрашивай GetKeyboardLayoutName при нажатиях на эти клавиши!
и при приёме и передаче фокуса в проге и самой проге !


 
Chris ©   (2002-02-01 13:33) [2]

>Broot

Не хочешь опрашивать по таймеру - опрашивай по Form1.OnKeyUp и Form1.OnMouseMove.

Но тормозить, наверно, будет страшно...


 
Broot   (2002-02-01 13:41) [3]

Если форма не активна в данный момент, но видна на экране, то такие способы не прокатят.


 
dimich ©   (2002-02-01 15:07) [4]

function GetLanguage: string;
var
p: PChar;
begin
GetMem(p, KL_NAMELENGTH);
try
GetKeyboardLayoutName(p);
Result := p;
finally
FreeMem(p, KL_NAMELENGTH);
end;
end;

////Где то там////
slan:=GetLanguage;
if slan="00000409" then Panel2.Caption:="En";
if slan="00000419" then Panel2.Caption:="Ru";



 
Broot   (2002-02-01 17:06) [5]

Dimich, спасибо конечно, но как это мне может помочь?


 
Dimka Maslov ©   (2002-02-01 17:34) [6]

При смене языка форма получает сообщения WM_INPUTLANGCHANGEREQUEST/WM_INPUTLANGCHANGE


 
Victor ©   (2002-02-11 08:37) [7]

можно ещё проще
{English} LoadKeyboardLayout("00000409", KLF_ACTIVATE);
{Russian} LoadKeyboardLayout("00000419", KLF_ACTIVATE);и так любой язык только посмотри в реестре какой код присваивать


 
limon ©   (2002-02-11 15:22) [8]

С полгода назад уже выкладывал класс по работе с клавиатурой, но куда-то он делся.
Раз вопросы начали подниматься снова, выкладываю в кладовку еще раз.


 
BOS   (2002-02-12 13:12) [9]

Dimka Maslov, а неподскажешь, как сделать так, чтобы эти сообщения получала неактивная форма (или скрытая в трэе, наподобие известных прграмм переключения раскладок клавиатуры)



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

Текущий архив: 2002.05.09;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
1-26057
Димка
2002-04-25 18:45
2002.05.09
Как запретить кнопку


1-26150
Gayrus
2002-04-24 16:41
2002.05.09
Функция


14-26258
PVOzerski
2002-04-02 11:38
2002.05.09
Чем занят комп в


4-26300
Gayrus
2002-03-06 16:18
2002.05.09
Hook


6-26202
_Serega_
2002-02-20 07:57
2002.05.09
Как убрать сообщения об ошибках ?