InputManのコントロールで[F2]キーなどの特定のキーのKeyDownイベントが発生しません。
対象製品
InputMan for Windows Forms 10.0J
詳細
InputManの各コントロールをフォームに配置すると、ショートカットコンポーネントが自動で配置され、デフォルトでショートカットキーが設定されます。ショートカットの設定があるキーでは、ショートカット機能が優先されてKeyDownイベントが無効になるため、KeyDownイベントが発生しません。KeyDownイベントを発生させるためには、以下いずれかの方法を行います。
ショートカット機能を無効にする方法
デフォルトで追加されるショートカット機能が不要な場合には、この設定を解除してKeyDownイベントを発生させる方法があります。ショートカットキーの設定を解除するには、コントロールのスマートタグにある「ショートカットキーの編集...」で行うか、下記のようにコーディングで行うことができます。
次のサンプルコードは、数値コントロール(GcNumber1)の[F2]キーに設定されているショートカット機能を解除する例です。
[Visual Basic]
[C#]
ショートカット機能は有効のまま、イベントを発生させる方法
デフォルトで追加されるショートカット機能を有効な状態のままKeyDownイベントを発生させるには、ショートカットコンポーネントのBlockKeyMessageプロパティをFalseに設定します。BlockKeyMessageプロパティはショートカットキー押下のメッセージをブロックするか、しないかを設定するプロパティです。
[Visual Basic]
[C#]
ショートカット機能を無効にする方法
デフォルトで追加されるショートカット機能が不要な場合には、この設定を解除してKeyDownイベントを発生させる方法があります。ショートカットキーの設定を解除するには、コントロールのスマートタグにある「ショートカットキーの編集...」で行うか、下記のようにコーディングで行うことができます。
次のサンプルコードは、数値コントロール(GcNumber1)の[F2]キーに設定されているショートカット機能を解除する例です。
[Visual Basic]
GcShortcut1.GetShortcuts(GcNumber1).Remove(Keys.F2)
[C#]
gcShortcut1.GetShortcuts(gcNumber1).Remove(Keys.F2);
ショートカット機能は有効のまま、イベントを発生させる方法
デフォルトで追加されるショートカット機能を有効な状態のままKeyDownイベントを発生させるには、ショートカットコンポーネントのBlockKeyMessageプロパティをFalseに設定します。BlockKeyMessageプロパティはショートカットキー押下のメッセージをブロックするか、しないかを設定するプロパティです。
[Visual Basic]
GcShortcut1.BlockKeyMessage = False
[C#]
gcShortcut1.BlockKeyMessage = false;