3

VS2008 と MFC 機能パックを使用して MFC アプリケーションを開発しました。このアプリケーション UI はリボンを使用しています。

アプリケーションの重要な機能の 1 つの適切なショートカットとして F10 を使用する必要がありますが、常にデフォルトのリボン アクセラレータを使用するため、アクセラレータを正しく設定できないようです。

これを達成する方法はありますか?

4

3 に答える 3

0

WM_SYSKEYDOWNのハンドラーを追加し、メッセージコードでvK_F10のwParam値を確認してみましたか?F10は、Altキーを押してキーボード制御下でメニューバーを開くための古い代替手段であるため、特別な処理が必要です。

于 2010-07-09T14:37:41.297 に答える
0

すでにホットキーを登録しようとしていると思います。キーストロークを取得する標準的な方法は、アプリのメイン スレッドに SetWindowsHookEx を使用することです。グローバル ウィンドウ フックは負荷が高く、Vista/Win7/Server 2008 でのフックに対するセキュリティ制限により、いずれにしてもそれらの有用性は大幅に低下しています。ただし、プロセス固有のフックは問題なく、DLL に含める必要はありません。

于 2010-07-05T12:41:26.440 に答える