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

Вниз

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

 
Юрии   (2008-12-03 20:48) [0]

Как отловить момент переключение раскладки клавиатуры? Т.е. мне нужно запустить определенный код только в случае если пользователь переключил раскладку.

Спасибо.


 
Loginov Dmitry ©   (2008-12-03 23:13) [1]

function GetLanguage(lParam: Integer = 0): string;
var
 S: string;
begin
 SetLength(S, 8);
 if lParam <> 0 then
   ActivateKeyboardLayout(lParam , HKL_NEXT);
 GetKeyboardLayoutName(PChar(S));
 if S = "00000409" then
   Result := "EN"
 else if S = "00000419" then
   Result := "RU"
 else
   Result := "??";
end;

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
 var Handled: Boolean);
begin
 if Msg.message = WM_INPUTLANGCHANGEREQUEST then
   Caption := GetLanguage(Msg.lParam);
end;


 
Труп Васи Доброго ©   (2008-12-04 15:57) [2]

> if Msg.message = WM_INPUTLANGCHANGEREQUEST then

Странно, но эта константа равна 80, а при переключении с рус. на eng. Msg.message=49304


 
Leonid Troyanovsky ©   (2008-12-04 18:59) [3]


> Труп Васи Доброго ©   (04.12.08 15:57) [2]

http://www.rsdn.ru/forum/message/3170996.1.aspx

--
Regards, LVT.



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
2-1228127753
linox
2008-12-01 13:35
2009.01.18
ADOTable + фильтр


3-1212820053
Ega23
2008-06-07 10:27
2009.01.18
INFORMATION_SCHEMA - Foreign Key


2-1228132325
Arinyshka
2008-12-01 14:52
2009.01.18
динамическое создание вычисляемого поля AdoQuery


2-1228224496
programmer90
2008-12-02 16:28
2009.01.18
Работа со char массивом


15-1227512397
nnov
2008-11-24 10:39
2009.01.18
звук sound blaster 5.1