0

Panel から派生したカスタム コントロールがあり、マウスでの選択を処理する必要があります。パネルではProcessCmdKeyをオーバーライドする必要があり、キーを押すと機能しますが、コントロールキーが離されたときに処理したい場合はどうすればよいですか? ありがとう

4

1 に答える 1

1

おそらくこれはあなたを助けることができます:

const int WM_KEYDOWN = 0x100;
const int WM_KEYUP = 0x101;

protected override bool ProcessKeyPreview(ref Message m)
{
    if (m.Msg == WM_KEYDOWN && (Keys)m.WParam == Keys.ControlKey)
    {
        //Do something
    }
    else if (m.Msg == WM_KEYUP && (Keys)m.WParam == Keys.ControlKey)
    {
        //Do something
    }

    return base.ProcessKeyPreview(ref m);
}

そして、これを見ることができます (まだ見ていない場合): http://support.microsoft.com/kb/320584

于 2011-08-03T11:11:25.697 に答える