Каким образом в программе включить Caps Lock клави

Тема в разделе "Delphi - Система", создана пользователем Guest_Egor, 8 янв 2005.

Статус темы:
Закрыта.
  1. Guest_Egor

    Guest_Egor Гость

    Каким образом в программе включить Caps Lock клавиатуры.
     
  2. Vagor.ini

    Vagor.ini Гость

    Код (Text):
    procedure TMyForm.Button1Click(Sender: TObject);
    Var
    KeyState: TKeyboardState;
    begin
    GetKeyboardState(KeyState);
    if (KeyState[VK_NUMLOCK] = 0) then
     KeyState[VK_NUMLOCK] := 1
    else
     KeyState[VK_NUMLOCK] := 0;
    SetKeyboardState(KeyState);
    end;
     
  3. zubr

    zubr Гость

    Функция SetKeyboardState с CAPS LOCK не работает. Вот выдержка из WinSDK:
    Можно сделать с помощью функции keybd_event:
    Код (Text):
    procedure TForm1.Button1Click(Sender: TObject);
    Var
    KeyState: TKeyboardState;
    begin
    GetKeyboardState(KeyState);
    if (KeyState[VK_CAPITAL] = 0) then
    begin
    keybd_event(VK_CAPITAL, MapVirtualKey(VK_CAPITAL, 0), 0, 0);//нажать клавишу
    Sleep(1);
    keybd_event(VK_CAPITAL, MapVirtualKey(VK_CAPITAL, 0), KEYEVENTF_KEYUP, 0);//отпустить клавишу
    end;
    end;
     
  4. test

    test Гость

    [Ctrl+X]
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей