PowerTools PlusPak for Windows Forms 8.0J
キーボードおよびマウスの制御

GcGlobalHookコンポーネントのキーボードおよびマウス操作の制御について、以下に解説します。

キーボードの操作を制御
KeyDown イベント または KeyUp イベントを使用して、キーボードの操作を制御することができます。

次のコードでは、KeyDown イベントを使用して PrintScreen キーでの画像キャプチャーを禁止します。
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    ' キーボード操作のグローバルフックを行います
    GcGlobalHook1.EnableKeyboardHook = True
End Sub

Private Sub GcGlobalHook1_KeyDown(sender As Object, e As KeyEventArgs) Handles GcGlobalHook1.KeyDown
    ' PinrtScrnによる画面のコピーを禁止します
    If e.KeyCode = Keys.PrintScreen Then
        e.Handled = True
    End If
End Sub
private void Form1_Load(object sender, EventArgs e)
{
    // キーボード操作のグローバルフックを行います
    gcGlobalHook1.EnableKeyboardHook = true;
}

private void gcGlobalHook1_KeyDown(object sender, KeyEventArgs e)
{
    // PinrtScrnによる画面のコピーを禁止します
    if (e.KeyCode == Keys.PrintScreen)
    {
        e.Handled = true;
    }
}
マウスのフック
以下のイベントを使用して、マウスの操作を制御することができます。
  • MouseDown イベント
  • MouseMove イベント
  • MouseUp イベント
  • MouseWheel イベント

次のコードでは、MouseWheel イベントを使用して、マウスホイールの操作を禁止します。
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    ' マウス操作のグローバルフックを行います
    GcGlobalHook1.EnableMouseHook = True
End Sub

Private Sub GcGlobalHook1_MouseWheel(sender As Object, e As HandledMouseEventArgs) Handles GcGlobalHook1.MouseWheel
    ' マウスホイールの操作を禁止します
    e.Handled = True
End Sub
private void Form1_Load(object sender, EventArgs e)
{
    // マウス操作のグローバルフックを行います
    gcGlobalHook1.EnableMouseHook = true;
}

private void gcGlobalHook1_MouseWheel(object sender, HandledMouseEventArgs e)
{
    // マウスホイールの操作を禁止する 
    e.Handled = true;
}
参照