У меня есть пользовательский элемент управления, который происходит от TTreeView. Я пытаюсь придать ему особое поведение, когда пользователь нажимает клавишу ВВОД, когда элемент управления сфокусирован, предоставляя ему обработчик WM_CHAR, который отвечает на VK_RETURN, но никогда не вызывается.
Я попытался убедиться, что он будет принимать все ввод с клавиатуры, добавив обработчик WM_GETDLGCODE, который говорит msg.Result := msg.Result or DLGC_WANTALLKEYS;
. Теперь он получает клавишу ВВОД, но клавиши со стрелками больше не работают!
Кто-нибудь знает, как я могу исправить это правильно?