Обработка клавиши разблокировки в панели управления - PullRequest
0 голосов
/ 03 августа 2011

У меня есть пользовательский элемент управления, полученный из Panel, и мне нужно обрабатывать выделение мышью. Я обнаружил, что для панели я должен переопределить ProcessCmdKey, и он работает для нажатия клавиш, но что, если я хочу обработать, когда клавиша управления отпущена? Спасибо

1 Ответ

1 голос
/ 03 августа 2011

Возможно, это поможет вам:

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

...