Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения
KANSoftWare

Как отличить нажат правый или левый SHIFT?

Delphi , ОС и Железо , Клавиши

Как отличить нажат правый или левый SHIFT? 

Способ 1

Code:

if ((Word(GetKeyState(VK_LSHIFT)) and $8000) <> 0) then
begin
end;
 
if ((Word(GetKeyState(VK_RSHIFT)) and $8000) <> 0) then
begin
end;

Автор ответа: CHERRY 

работает под Win NT/2000, но не работает под Win95.

Способ 2

В 95 катит следующее:

Code:

RSHIFT = 36h
LSHIFT = 2Ah
asm
in al, 60h
cmp al, 36h
jne @@exit
mov tt,1
@@exit:
end;
if tt = 1 then ShowMessage ('Right Shift');

Автор ответа: Baa

Способ 3

Code:

procedure TDecEditForm.Memo1KeyPress(Sender: TObject; var Key: Char);
VAR s:String;  RL:Byte;
begin
IF key=CHR(VK_RETURN) Then
Begin
   //WIN NT/2000
   If (GetVersion() and $80000000)=0 then
     BEGIN
       IF ((Word(GetKeyState(VK_LSHIFT)) and $8000)<>0)  Then
         Begin
         End;
   IF ((Word(GetKeyState(VK_RSHIFT)) and $8000)<>0)  Then
     Begin
     End;
End
ELSE
//WIN 9.x
Begin
   asm
     mov ah,2
     int $16
     mov RL,al
   end;
   if 1 = (RL and 1) then //  ПРАВЫЙ SHIFT НАЖАТ+ENTER
     Begin
     End;
   if 2 = (RL and 2) then //  ЛЕВЫЙ SHIFT НАЖАТ+ENTER
     Begin
     End;
End;
//WIN 9.x
END;
End;

Автор ответа: CHERRY

Взято с Vingrad.ru http://forum.vingrad.ru

Статья Как отличить нажат правый или левый SHIFT? раздела ОС и Железо Клавиши может быть полезна для разработчиков на Delphi и FreePascal.


Комментарии и вопросы


Ваше мнение или вопрос к статье в виде простого текста (Tag <a href=... Disabled). Все комментарии модерируются, модератор оставляет за собой право удалить непонравившейся ему комментарий.

заголовок

e-mail

Ваше имя

Сообщение

Введите код




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Клавиши ::


реклама

::


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru Rambler's Top100
19.09.2020 21:06:46/0.0029599666595459/2