处理自定义面板控件中的释放键

时间:2011-08-03 10:50:03

标签: c# event-handling keyboard onkeyup

我有从Panel派生的自定义控件,我需要处理用鼠标选择。我发现对于面板我必须覆盖ProcessCmdKey,它正在按键,但如果我想在控制键释放时处理怎么办?感谢

1 个答案:

答案 0 :(得分: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

相关问题