Advertisement
Uziel

GlobalKeyboardHookLocalSupression

Oct 28th, 2013
206
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.82 KB | None | 0 0
  1.  public partial class Form1 : Form
  2.     {
  3.         readonly GlobalKeyboardHook _globalKeyboardHook = new GlobalKeyboardHook();
  4.  
  5.         public Form1()
  6.         {
  7.             InitializeComponent();
  8.         }
  9.  
  10.         private void Form1_Load(object sender, EventArgs e)
  11.         {
  12.             _globalKeyboardHook.HookedKeys.Add(Keys.LShiftKey);
  13.             _globalKeyboardHook.HookedKeys.Add(Keys.RShiftKey);
  14.             _globalKeyboardHook.HookedKeys.Add(Keys.LControlKey);
  15.             _globalKeyboardHook.HookedKeys.Add(Keys.RControlKey);
  16.             _globalKeyboardHook.KeyDown += GlobalKeyboardHook_KeyDown;
  17.             _globalKeyboardHook.KeyUp += GlobalKeyboardHook_KeyUp;
  18.         }
  19.  
  20.         void GlobalKeyboardHook_KeyUp(object sender, KeyEventArgs e)
  21.         {
  22.             lstLog.Items.Add("Up\t" + e.KeyCode);
  23.             //e.Handled = true; //if set to true, the key is supressed globally, i only need to supress for this and children
  24.         }
  25.  
  26.         void GlobalKeyboardHook_KeyDown(object sender, KeyEventArgs e)
  27.         {
  28.             lstLog.Items.Add("Down\t" + e.KeyCode);
  29.             //e.Handled = true; //if set to true, the key is supressed globally, i only need to supress for this and children
  30.         }
  31.  
  32.         protected override void OnKeyDown(KeyEventArgs e)
  33.         {
  34.             switch (e.KeyValue)
  35.             {
  36.                 case 16:
  37.                 case 17:
  38.                     MessageBox.Show("Shift and control keys aren't allowed in focus",
  39.                                    "Error",
  40.                                    MessageBoxButtons.OK,
  41.                                    MessageBoxIcon.Information);
  42.                     e.Handled = true;
  43.                     break;
  44.                 default:
  45.                     base.OnKeyDown(e);
  46.                     break;
  47.             }
  48.         }
  49.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement