home *** CD-ROM | disk | FTP | other *** search
- unit Vkeys;
-
- interface
-
- uses
- Classes;
-
- type
- T3StrAry = array[0..2] of String;
- T5StrAry = array[0..4] of String;
- T7StrAry = array[0..6] of String;
-
- const
- AMessage: T5StrAry = ('WM_CHAR', 'WM_KEY', 'WM_MOUSEMOVE', 'WM_MOUSEDOWN', 'WM_MOUSEUP');
- Buttons: T3StrAry = ('mbLeft', 'mbRight', 'mbCenter');
- Shifty: T7StrAry = ('ssShift', 'ssAlt', 'ssCtrl', 'ssLeft',
- 'ssRight', 'ssMiddle', 'ssDouble');
-
- function GetShift(State: TShiftState): String;
- function GetKey(K: Word): String;
- implementation
- uses
- WinTypes;
-
- function GetShift(State: TShiftState): String;
- var
- B, i: Byte;
- begin
- Result := '';
- for i := 0 to 7 do begin
- B := Byte(1) shl i;
- if (B and Byte(State)) > 0 then Result := Result + ' ' + Shifty[i];
- end;
- end;
-
- function GetKey(K: Word): String;
- begin
- case K of
- vk_LButton: Result := 'vk_LButton';
- vk_RButton : Result := 'vk_RButton';
- vk_Cancel : Result := 'vk_Cancel';
- vk_MButton : Result := 'vk_MButton';
- vk_Back : Result := 'vk_Back';
- vk_Tab : Result := 'vk_Tab';
- vk_Clear : Result := 'vk_Clear';
- vk_Return : Result := 'vk_Return';
- vk_Shift : Result := 'vk_Shift';
- vk_Control : Result := 'vk_Control';
- vk_Menu : Result := 'vk_Menu';
- vk_Pause : Result := 'vk_Pause';
- vk_Capital : Result := 'vk_Capital';
- vk_Escape : Result := 'vk_Escape';
- vk_Space : Result := 'vk_Space';
- vk_Prior : Result := 'vk_Prior';
- vk_Next : Result := 'vk_Next';
- vk_End : Result := 'vk_End';
- vk_Home : Result := 'vk_Home';
- vk_Left : Result := 'vk_Left';
- vk_Up : Result := 'vk_Up';
- vk_Right : Result := 'vk_Right';
- vk_Down : Result := 'vk_Down';
- vk_Select : Result := 'vk_Select';
- vk_Print : Result := 'vk_Print';
- vk_Execute : Result := 'vk_Execute';
- vk_SnapShot : Result := 'vk_SnapShot';
- vk_Insert : Result := 'vk_Insert';
- vk_Delete : Result := 'vk_Delete';
- vk_Help : Result := 'vk_Help';
- vk_NumPad0 : Result := 'vk_NumPad0';
- vk_NumPad1 : Result := 'vk_NumPad1';
- vk_NumPad2 : Result := 'vk_NumPad2';
- vk_NumPad3 : Result := 'vk_NumPad3';
- vk_NumPad4 : Result := 'vk_NumPad4';
- vk_NumPad5 : Result := 'vk_NumPad5';
- vk_NumPad6 : Result := 'vk_NumPad6';
- vk_NumPad7 : Result := 'vk_NumPad7';
- vk_NumPad8 : Result := 'vk_NumPad8';
- vk_NumPad9 : Result := 'vk_NumPad9';
- vk_Multiply : Result := 'vk_Multiply';
- vk_Add : Result := 'vk_vkAdd';
- vk_Separator : Result := 'vk_Separator';
- vk_Subtract : Result := 'vk_Subtract';
- vk_Decimal : Result := 'vk_Decimal';
- vk_Divide : Result := 'vk_Divide';
- vk_F1 : Result := 'vk_F1';
- vk_F2 : Result := 'vk_F2';
- vk_F3 : Result := 'vk_F3';
- vk_F4 : Result := 'vk_F4';
- vk_F5 : Result := 'vk_F5';
- vk_F6 : Result := 'vk_F6';
- vk_F7 : Result := 'vk_F7';
- vk_F8 : Result := 'vk_F8';
- vk_F9 : Result := 'vk_F9';
- vk_F10 : Result := 'vk_F10';
- vk_F11 : Result := 'vk_F11';
- vk_F12 : Result := 'vk_F12';
- vk_F13 : Result := 'vk_F13';
- vk_F14 : Result := 'vk_F14';
- vk_F15 : Result := 'vk_F15';
- vk_F16 : Result := 'vk_F16';
- vk_F17 : Result := 'vk_F17';
- vk_F18 : Result := 'vk_F18';
- vk_F19 : Result := 'vk_F19';
- vk_F20 : Result := 'vk_F20';
- vk_F21 : Result := 'vk_F21';
- vk_F22 : Result := 'vk_F22';
- vk_F23 : Result := 'vk_F23';
- vk_F24 : Result := 'vk_F24';
- vk_NumLock : Result := 'vk_NumLock';
- vk_Scroll : Result := 'vk_Scroll';
- else begin
- Result := Chr(K);
- Result[0] := #1;
- end;
- end;
- end;
- end.
-