| |
| Shift, Ctrl, Alt key checking |
 |
How can I determine if the Shift, Alt, or Ctrl key is depressed at any given time?
The following example demonstrates checking if the Shift key is pressed during a menu item selection. The example presents functions for testing the status of the Alt, Ctrl, and shift keys.
Example:
function CtrlDown : Boolean;
var
State : TKeyboardState;
begin
GetKeyboardState(State);
Result := ((State[vk_Control] And 28) <> 0);
end;function ShiftDown : Boolean;
var
State : TKeyboardState;
begin
GetKeyboardState(State);
Result := ((State[vk_Shift] and 28) <> 0);
end; function AltDown : Boolean;
var
State : TKeyboardState;
begin
GetKeyboardState(State);
Result := ((State[vk_Menu] and 28) <> 0);
end; procedure TForm .MenuItem 2Click(Sender: TObject);
begin
if ShiftDown then
Form .Caption := 'Shift' else
Form .Caption := '';
end;
|
|
| Hits/month |
2,500,000+ |
Downloads (Since May 2000) |
7,393,709 |
| Total Files |
6,023 |
| Forum msgs |
7,670 |
| Articles/FAQs |
70+/900+ |
Top Selling Software at Amazon
|