マウスの右を任意のキーに割り当てる
(ここでは、右クリックされとき、F11を押したと認識されるようにお願いします)
マウスのホイールを任意のキーに割り当てる
(ここでは、F12を押したと認識されるようにお願いします)
VB2005 Express Edition
よろしくお願いします。
おそらく一番簡単なSendKeysを使う方法です.
下にそのままフォームのコード内容をコピーしておきます.
見るべき点は,一番下にあるForm1_MouseDown, Form1_KeyDown, Form1_MouseWheelの部分です.
Public Class Form1 Inherits System.Windows.Forms.Form #Region " Windows フォーム デザイナで生成されたコード " Public Sub New() MyBase.New() ' この呼び出しは Windows フォーム デザイナで必要です。 InitializeComponent() ' InitializeComponent() 呼び出しの後に初期化を追加します。 End Sub ' Form は、コンポーネント一覧に後処理を実行するために dispose をオーバーライドします。 Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing Then If Not (components Is Nothing) Then components.Dispose() End If End If MyBase.Dispose(disposing) End Sub ' Windows フォーム デザイナで必要です。 Private components As System.ComponentModel.IContainer ' メモ : 以下のプロシージャは、Windows フォーム デザイナで必要です。 'Windows フォーム デザイナを使って変更してください。 ' コード エディタを使って変更しないでください。 <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() ' 'Form1 ' Me.AutoScaleBaseSize = New System.Drawing.Size(5, 12) Me.ClientSize = New System.Drawing.Size(292, 273) Me.Name = "Form1" Me.Text = "Form1" End Sub #End Region Private Sub Form1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseDown If (e.Button = MouseButtons.Right) Then SendKeys.Send("{F11}") End If End Sub Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown MessageBox.Show("key code: " & e.KeyCode, "ok", MessageBoxButtons.OK, MessageBoxIcon.Exclamation) End Sub Private Sub Form1_MouseWheel(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseWheel SendKeys.Send("{F12}") End Sub End Class
コメント(5件)
自作のアプリケーション上のみでの割り当てですか?
http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.sendkeys.send(VS.80).aspx
とかつかうとできると思う。
OS上でです。
>KUROXさん
10人以上から回答拒否ユーザーに指定されている場合、回答を拒否する設定になってます。なので拒否になっているのかと・・・
一時的に20まで上げてみますね。
よろしくお願いしますm(__)m
参考になりません.回答は開けないようにしてください.
OS上でフックするためにはDLL化が必要です.VBではたぶんきついと思います.
参考:
VBでマウスジェスチャ:
http://www.geocities.co.jp/SiliconValley/7406/tips/mouse/mouse1.html
了解しました。
解決したため、質問を終了させて頂きます。
ありがとうございました。