does anyone know how i can setup an event handler so that if the keystrokes Alt + Shift + Ctrl + a letter will do something?
Asked
Active
Viewed 1,842 times
0
-
Check this Q&A: http://stackoverflow.com/questions/865774/c-getting-the-correct-keys-pressed-from-keyeventargs-keydata – Fredrik Mörk Oct 07 '09 at 21:24
2 Answers
3
override void OnKeyDown( object sender, KeyEventArgs e )
{
bool myKeysPressed = (e.KeyCode == Keys.A) &&
((e.Modifiers & Keys.Alt) == Keys.Alt) &&
((e.Modifiers & Keys.Shift) == Keys.Shift) &&
((e.Modifiers & Keys.Control) == Keys.Control);
}

Ed S.
- 122,712
- 22
- 185
- 265
3
Sames as Ed's, but shorter and more readable ;)
override void OnKeyDown( object sender, KeyEventArgs e )
{
bool myKeysPressed = (e.KeyCode == Keys.A) &&
e.Alt &&
e.Shift &&
e.Control;
}

Thomas Levesque
- 286,951
- 70
- 623
- 758
-
why do you need to override? is it not possible to just add an event handler to the keydown event? – Grant Oct 07 '09 at 22:01
-
1
-
Ahhh, didn't even know those properties existed. @Grant: You would override the method if this code was inside of your target object's class definition, otherwise use the event. – Ed S. Oct 07 '09 at 23:43