Главная страница
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.013 c
4-1204486757
Mixali4
2008-03-02 22:39
2009.01.18
Время выполнения процесса


2-1228638477
denissoft
2008-12-07 11:27
2009.01.18
Комонент для отображения дерева?


2-1228223777
alexeis
2008-12-02 16:16
2009.01.18
Поиск в динамически создаваемом TreeView


2-1228154721
Макс123
2008-12-01 21:05
2009.01.18
Прокрутка картинки


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