Automated updating of API pages at this location, to reflect patch changes, has ceased from 10.1.7 onwards. |
There are three seperate levels of IsModifierKeyDown() type API functions but they all do the same basic function and return true if the specified key is currently pressed down.
- The first level is one function to tell you if any of the modifier keys are down IsModifierKeyDown()
- The second level is the three diferent functions one for each type of Modifier key: Shift, Alt & Ctrl
- The third is one function for each seperate modifier key: Left Alt, Right Alt, Left Shift, Right Shift, Left Ctrl & Right Ctrl.
Is Any Modifier Key Down
Returns whether ANY modifier key is currently pressed down.
anyModKeyIsDown = IsModifierKeyDown();
Is One Key Type Down
Returns whether a specific modifier key type is currently pressed down.
aShiftKeyIsDown = IsShiftKeyDown(); aAltKeyIsDown = IsAltKeyDown(); aCtrlKeyIsDown = IsControlKeyDown();
Is Specific Modifier Key Down
Returns whether a specific modifier key is currently pressed down.
theLeftShiftKeyIsDown = IsLeftShiftKeyDown(); theLeftAltKeyIsDown = IsLeftAltKeyDown(); theLeftCtrlKeyIsDown = IsLeftControlKeyDown(); theRightShiftKeyIsDown = IsRightShiftKeyDown(); theRightAltKeyIsDown = IsRightAltKeyDown(); theRightCtrlKeyIsDown = IsRightControlKeyDown();
Returns
All of the functions mentioned return the same values
- Flag - 1 if specified key or keytype is currently pressed down, nil otherwise.
Additional Clarification
anyModKeyIsDown = IsModifierKeyDown();
is the same as using:
anyModKeyIsDown = (IsShiftKeyDown() or IsControlKeyDown() or IsAltKeyDown());
As well as:
aShiftKeyIsDown = IsShiftKeyDown();
being the same as:
aShiftKeyIsDown = (IsRightShiftKeyDown() or IsLeftShiftKeyDown());
Related Events
- MODIFIER_STATE_CHANGED - fires when shift/ctrl/alt keys are pressed or released
See Also
Notes
- The modifier keys are not considered to be down if the current call stack started with a binding-triggered event dispatch where the modifier key was part of the binding.