daniel 27 лет назад
Родитель
Сommit
e664873b05
1 измененных файлов с 36 добавлено и 0 удалено
  1. 36 0
      rtl/os2/tests/testkbd.pas

+ 36 - 0
rtl/os2/tests/testkbd.pas

@@ -0,0 +1,36 @@
+program TestKBD;
+{$X+}
+
+uses
+{$IFDEF FPK}
+ KbdCalls;
+{$ELSE}
+ Os2Base, Os2Def;
+{$ENDIF}
+
+function ExtKeyPressed: boolean;       (* 'key' is here as well e.g. a shift *)
+var
+ C: char;
+{$IFDEF VIRTUALPASCAL}
+ KI: KbdKeyInfo;
+ K: KbdInfo;
+{$ELSE}
+ KI: TKbdKeyInfo;
+ K: TKbdInfo;
+{$ENDIF}
+ B: boolean;
+begin
+ B := false;
+ K.cb := SizeOf (K);
+ KbdGetStatus (K, 0);
+{ FillChar (KI, SizeOf (KI), 0);
+ KbdCharIn (KI, IO_NOWAIT, 0);}
+ ExtKeyPressed :=
+{ (KI.chScan <> 0) and (KI.chScan and $80 = 0) or }
+                                                    (K.fsState and $FF0F <> 0);
+end;
+
+begin
+ WriteLn ('Press any _shift_ (or Alt, Ctrl etc.) key to continue ...');
+ repeat until ExtKeyPressed;
+end.