9つのチェックボックスが入った小さなフォームがあります。テンキーに対応するボックスのホットキーを作成しようとしていますが、最悪の時間を過ごしています。私には2つの主な問題があります:
1.1。
private void checkBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.NumPad7)
{
MessageBox.Show("It's working");
}
}
それが私のコードです。それは動作しますが、私が望むことをしません。メッセージが表示されますが、そのチェックボックスが強調表示されている場合に限ります。KeyPreviewはこのコンテキストで役立つと思いますが、MSDNデータベースは、KeyPreviewを機能させる方法を理解しようとする私の問題を解決するのに役立ちませんでした。
次に、ホットキーを押したときにコードでチェックボックスをオンにします。CheckStateを使用して計算できる組み合わせは機能しないようです。誰かが何らかの刺激を持っているなら、私はそれを大いに感謝します。
コメントからのコード:
public Form2()
{
InitializeComponent();
this.KeyPreview = true;
this.KeyDown += new KeyEventHandler(Form2_KeyDown);
}
private void Form2_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.NumPad7:
MessageBox.Show("ABC");
break;
default:
break;
}
}