Есть процедура, которая отображает язык из трея на поле формы:
Код:
procedure TForm1.TimerKTimer(Sender: TObject);
var
buf: array [0..$ff] of Char;
begin
if getasynckeystate($61)<>0 then
EditAdd.Text:='1';
GetKeyboardLayoutName(buf);
if ((StrPas(buf)= '00020409') or (StrPas(buf)= '00000409')) then LabelK.Caption:='EN';
if StrPas(buf)= '00000419' then LabelK.Caption:='RU';
end;
Эта процедура работает, когда окно программы активно.
Помогите организовать эту процедуру так, чтобы она отображала состояние клавиатуры (язык) в том случае, когда программа находится в пассивном состоянии - по аналогии, например, с перехватом клавиш:
Код:
if getasynckeystate($61)<>0 then
EditAdd.Text:='1';
Спасибо!