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

Вниз

Энгл Рус   Найти похожие ветки 

 
Сутковой Вадим   (2002-12-11 21:22) [0]

Добрый вечер делферы! Вот, озодачился проблемой:
Мне нужно из проги узновать какая раскладка клавы в активном окне! GetKeyboartLayout - только в своей ыинде определяет! Помогите плииз, запыхался в поисках...


 
Юрий Зотов ©   (2002-12-11 22:50) [1]

Для чужих окон нужно сначала приаттачить ввод. Вот простенький (но работающий) примерчик. Не судите строго - набросал на скорую руку, лишь бы показать ход действий. У формы выставьте StayOnTop, а интервал таймера - 100.

type
TForm1 = class(TForm)
Label1: TLabel;
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
private
FID: DWORD;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if FID <> 0 then AttachThreadInput(GetCurrentThreadId, FID, False);
FID := GetWindowThreadProcessId(GetForegroundWindow, nil);
if FID = GetCurrentThreadId then FID := 0 else AttachThreadInput(GetCurrentThreadId, FID, True);
Label1.Caption := IntToStr(GetKeyboardLayout(FID))
end;


 
Сутковой Вадим   (2002-12-12 11:36) [2]

Спасибо Юрий Зотов © , огромнейшее спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
1-74735
Гость
2002-12-14 15:00
2002.12.23
Запуск


14-74901
Николай Быков
2002-12-01 12:02
2002.12.23
Посоветуйте принтер до 3000 рублей, но можно и до 3500 р.


1-74789
Dmitriy
2002-12-11 13:13
2002.12.23
Из области геометрии


3-74563
Vladk
2002-12-04 13:17
2002.12.23
SP


1-74826
harismatik
2002-12-11 20:46
2002.12.23
Ввод фрагмента HTML кода