Windowsフォームアプリケーションを作成しています。いくつかのキーボード ショートカットを押した後、いくつかのアクションを実行する必要があります。私はこの部分を持っています:
Protected Overrides Function ProcessCmdKey(ByRef msg As Message, keyData As Keys) As Boolean
If keyData = Keys.Control & Keys.T Then
'Wait till mouse clicks one of application controls
'And get selected control information
Else
MyBase.ProcessCmdKey(msg, keyData)
End If
End Function
また、このキーボード キーの組み合わせが押された後、マウス クリックで選択されるコントロールを取得する必要があります。すべてのメイン フォーム コントロールでイベントを作成することはできません (たとえそれが可能であったとしても、それはばかげた選択だと思います)。
私が持っている解決策の1つは Me.ActiveControl ですが、ラベルやその他のフォーカスできないコントロールにフォーカスすることはできません。したがって、それはおそらく正しい選択ではありません。
私が見つけた別の解決策はグローバルフックですが、その使用方法がわかりません。あなたの助けとアドバイスを求めています。グローバルフックのサンプルまたはマウスクリックコントロールを取得するためのより良い解決策がある場合は、それを共有してください:)