Как изменить Selectable ControlStyle кнопки, чтобы она перестала получать фокус - PullRequest
0 голосов
/ 03 ноября 2018

Я делаю игру в понг, и у меня есть пара кнопок, чтобы делать разные вещи, мои клавиши перемещения - W & S, Up & Down. Проблема в том, что стрелки вверх и вниз устанавливают фокус на кнопки и не обеспечивают правильное движение. Я знаю, что сделать их с помощью графических блоков это исправит, но я действительно хочу использовать кнопки управления, поскольку они выглядят лучше. Для форм KeyPreview также уже установлено значение true.

Public Enum Direction { None, Up, Down };
Direction leftDir;

If (e.keycode == keys.Up) leftDir = Direction.Up;
If (e.keycode == keys.Down) leftDir = Direction.Down;

Это условие не получает, хотя нажатие клавиши передается набором фокуса кнопок

1 Ответ

0 голосов
/ 03 ноября 2018

Создайте пользовательскую кнопку и примените метод SetStyle.

public ButtonX : Button
{
   public ButtonX
   {
      SetStyle(ControlStyles.Selectable, false);
   }
}

Или переключив фокус на другой элемент управления. Например, если у вас есть метка внутри формы, после того, как вы что-то делаете с помощью кнопки, просто наберите label.Focus();.

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