3

Registerhotkey を使用して、ユーザーがカスタム キーの組み合わせを定義してさまざまなアクションを実行できるようにしています。私が抱えていると思われる問題は、現在、キーが既に存在するかどうかを確認する方法がないことです。

例: 私のテスターの 1 人が、すべてのウィンドウを最小化するためのキーの組み合わせを知らずに、「Windows キー + D」を定義しようとしました。そのため、キーの組み合わせが与えられた場合、そのキーの組み合わせが Windows または他のアプリケーションによって既に存在するかどうかを確認できるかどうかを知る方法があるかどうかに興味がありました。

4

1 に答える 1

2

この解決策を見つけるのを手伝ってくれた@jim-mischelに感謝します!

ホットキーが存在するかどうかを確認するには、次の手順を実行します。

int ShortcutID = 100; // ID used for this Shortcut Key Combination
uint keyModifier = 2; // This is the Control Key
Char alphanumericKey = "C";
bool didItError
   = RegisterHotKey(this.Handle, ShortcutID, keyModifier, (int)alphanumericKey );

Control+CWindows によって登録されたキーの組み合わせであるためRegisterHotKey、false が返されます。登録されたキーの組み合わせでない場合は、true が返されます。

于 2012-12-17T16:56:28.473 に答える