その列挙型の値の対応するキーデータ(キーコードの組み合わせ)を簡単に取得する方法はありますか?System.Windows.Forms.ShortcutをKeyData/KeyCodeに変換します
私は1つを見つけ、そしてすべての人のためのswitch文の作成は少し行き過ぎであることができない...
列挙型の要素の整数値は、キーコードではなく、いくつかの「不明」大きな数字は、そう簡単にキャスティングintには動作しません。
その列挙型の値の対応するキーデータ(キーコードの組み合わせ)を簡単に取得する方法はありますか?System.Windows.Forms.ShortcutをKeyData/KeyCodeに変換します
私は1つを見つけ、そしてすべての人のためのswitch文の作成は少し行き過ぎであることができない...
列挙型の要素の整数値は、キーコードではなく、いくつかの「不明」大きな数字は、そう簡単にキャスティングintには動作しません。
下位4つのバイトがキーであり、あなたはこのようなものでキーコードを得ることができるので、上位4つのバイトは、Shiftキー、CtrlキーとAltキーキーのマスクです:
Shortcut shortcut = Shortcut.ShiftDel;
Debug.Print((((int)shortcut) & 0xFFFF).ToString());
ウィル出力46
delキーのコードです。
System.Windows.Forms.ShortcutおよびSystem.Windows.Forms.Keysは、直接キャストできます(その整数値は一致します)。
Keys keys = (Keys) Shortcut.CtrlL;
@Denis:私の答えに例を追加する努力に感謝しますが、 "おそらく" 2回は私に合っていません、申し訳ありません。代わりにあなた自身の答えを提供するか、コメントを追加することができます。 –
nice catch! thnx –