Показать сообщение отдельно

  #5880  
Старый 25.03.2010, 14:07
EndLeSSDre@M
Участник форума
Регистрация: 18.07.2009
Сообщений: 278
С нами: 8850305

Репутация: 259
По умолчанию

на примере одного кода:

PHP код:
type
//тут добавляешь какие клавиши тебе нужны

   
TKeyType = (ktCapsLock, ktNumLock, ktScrollLock);

 
procedure SetLedState(KeyCode: TKeyType; bOn: Boolean);
 var
   
KBState: TKeyboardState;
   
Code: Byte;
 
begin
   
case KeyCode of
     ktScrollLock
: Code := VK_SCROLL;
     
ktCapsLock: Code := VK_CAPITAL;
     
ktNumLock: Code := VK_NUMLOCK;
   
end;
   
GetKeyboardState(KBState);
   if (
Win32Platform = VER_PLATFORM_WIN32_NT) then
   begin
     
if Boolean(KBState[Code]) <> bOn then
     begin
       keybd_event
(Code,
                   
MapVirtualKey(Code, 0),
                   
KEYEVENTF_EXTENDEDKEY,
                   
0);

       
keybd_event(Code,
                   
MapVirtualKey(Code, 0),
                   
KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,
                   
0);
     
end;
   
end
   
else
   
begin
     KBState
[Code] := Ord(bOn);
     
SetKeyboardState(KBState);
   
end;
 
end;

 
// это в саму кнопку добавляешь:

procedure TForm1.Button1Click(Sender: TObject);
 
begin
   SetLedState
(ktCapsLock, True);  // CapsLock on 
  
SetLedState(ktNumLock, True);  // NumLock on 
  
SetLedState(ktScrollLock, True);  // ScrollLock on 
end; 
 
Ответить с цитированием