Разрешение Enter в управлении горячей клавишей

Я использую стандартный элемент управления горячими клавишами, чтобы пользователь мог указать комбинацию клавиш для определенного действия. Однако он не позволяет использовать клавишу Return (Enter). Есть ли способ разрешить это? Мое действие похоже на ответ в чате, поэтому использование горячей клавиши типа Alt + Enter имеет смысл.

0

Решение

Единственным способом было бы подразделить элемент управления, так как по умолчанию он отклоняет такие ключи, как VK_RETURN,

Ваш подкласс, вероятно, должен будет сделать две вещи:

  • Обрабатывать WM_GETDLGCODE сообщение и возврат DLGC_WANTMESSAGE когда сообщение указывает, что клавиша ввода была нажата
  • Обрабатывать WM_KEYDOWN сообщение, когда возвращен нажата, и вручную установить горячую клавишу в элементе управления, отправив ему HKM_SETHOTKEY сообщение.
0

Другие решения

Других решений пока нет …