【C#】キーが押されたかどうかをフォームで判定する

【C#】キーが押されたかどうかをフォームで判定する

2012-09-07

ボタンやコンボボックスをクリックするんじゃなくて何も選択していない状態でキーコードを取得したい時は以下のようにするといいかもしれません。

namespace ahoaho {

    public partial class Form1: Form {

        public Form1() {

            InitializeComponent();

            KeyPreview = true; // キーを取得出来るようにする

            KeyDown += new KeyEventHandler(Form1_KeyDown); // キーイベントハンドラを追加

        }

        // キーが押された場合
        private void Form1_KeyDown(object sender, KeyEventArgs e) {

            MessageBox.Show(e.KeyCode.ToString() + "が押されました。イヒヒッ");

            if (e.KeyCode.ToString().Equals("F12") == true) {

                Application.Exit(); // F12が押されたらアプリケーション終了

            }

        }

    }

}