Главная страница
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.012 c
2-1228400306
VVrecker
2008-12-04 17:18
2009.01.18
IdHTTPServer сброс пароля полученного с помощью AResponseInfo.Au


2-1228662640
алгоритм
2008-12-07 18:10
2009.01.18
подстакажите алгоритм нахождения точки


15-1227101960
Mozart
2008-11-19 16:39
2009.01.18
Русский перевод фильмов bbc зло?


15-1227520279
TUser
2008-11-24 12:51
2009.01.18
Портативный усилитель


15-1227434110
{RASkov}
2008-11-23 12:55
2009.01.18
Нет звука