Ключи событий и нажмите - PullRequest
0 голосов
/ 27 февраля 2019

после многих поисков в интернете я не могу найти оптимизированное решение.Действительно, я просто хотел бы заблокировать клавиши и щелчок мышью в какой-то момент, однако я бы хотел избежать установки всех клавиш и щелчков в моем состоянии.Это возможно?

Есть код:

private void cmdVision_MouseDown(object sender, MouseEventArgs e)
{
    if (e.Button == MouseButtons.Left)
    {
        pnlNote.Enabled = true;
    }
}

private void cmdVision_MouseUp(object sender, MouseEventArgs e)
{
    if (e.Button == MouseButtons.Left)
    {
        pnlNote.Enabled = false;
    }
    //MAJ4
    else if (e.Button == MouseButtons.Right || e.Button == MouseButtons.Middle)
    {
        pnlNote.Enabled = false;
    }
    //MAJ4
}

Как видите, мое состояние состоит из e.Button == MouseButtons.Right ||e.Button == MouseButtons.Middle.Поэтому я хотел бы избежать необходимости делать это для каждой клавиши на клавиатуре.

Заранее спасибо;)

1 Ответ

0 голосов
/ 27 февраля 2019

Попробуйте использовать PreviewKeyDown событие и его аргументы здесь Существует ряд полезных свойств, таких как IsInputKey и KeyCode (вы можете сравнить нажатую клавишу с диапазоном кодов клавиш)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...