複数のグローバルホットキーを処理するための優れたデザインを考えるのに苦労しています。
3つの異なるグローバルホットキーにバインドされた3つの異なる関数があるとします...
- 曲を再生| Ctrl + P
- 曲をスキップ| Ctrl + N
- 音量を上げる| Ctrl + V
押されたホットキーが特定の機能に準拠しているかどうかを確認するための効果的な方法は何ですか?私はこれに非常によく似たクラスを使用しています:http ://www.liensberger.it/web/blog/?p = 207
ホットキーごとにホットキークラスの新しいインスタンスを作成する必要がありますか?
Hotkey hotkey = new Hotkey();
hotkey.RegisterHotkey(Shortcut.ModifierKeys.Control, Keys.F10);
hotkey.KeyPressed += ((s, args) =>
{
//Do Something!
});
または、さまざまなホットキー関数を持つ列挙型を用意し、それをホットキークラス内から管理して、複数のインスタンスを防ぐ必要があります(無駄ですが簡単なようです)。事前にアドバイス/ヘルプをありがとう。