タスクバーの通知領域には、Ctrl-F11キーの組み合わせを使用してタスクを実行する小さなサードパーティプログラムがあります。問題は、私が同じショートカットを使用しているのに、私のものが他のショートカットによって隠されていることです。基本的に、私のウィンドウが現在アクティブなウィンドウであっても、ユーザーがCtrl-F11を押したときに自分のことを行うことはできません。キーの組み合わせを使用する場合はアクティブウィンドウが優先されると思いましたが、そうではないようです。プログラムが.NETC#で記述されていることを考えると、アプリケーションがアクティブなときにショートカットの優先順位を取得するにはどうすればよいですか?
1 に答える
0
トレイアプリのキーの組み合わせを変更できず、アプリで同じものを使用する必要がある場合。極端なアプローチは、WindowsフックDLLをC ++またはDelphiで記述し、Ctrl-F11のすべてのキー押下をフィルタリングして、アプリにメッセージを送信することです。
これは簡単な作業ではありません。CodeProjectなどでWindowsキーボードイベントをフックするプロジェクトがあります。それらの1つを適応させることができます。キーが押され、ウィンドウ/フォームがアクティブになったら、SendMessageを使用してウィンドウにメッセージを送信できます。
これが最後の復元になります。それはあなたがそれをどれほどひどく必要としているかによります。
于 2010-01-15T13:51:11.910 に答える