Событие нажатия Enter

Компонент ITextDataControl не видит нажатой клавиши Enter в событие KeyPress. Окно то же не видит в событие KeyPress нажатого Enter. Зато где то в глубинах террасофта есть биндинг нажатия Enter и клика на кнопку OK. Какое событие обрабатывает нажатой клавиши Enter в ITextDataControl? Как не вызывать клик на OK по нажатию Enter в ITextDataControl?

Нравится

5 комментариев

Здравствуйте, Михаил!
О какой версии идет речь?
Я проверил на 3.4.0.96 - обработчик срабатывает:

Здесь можно посмотреть коды клавиш.

3.4.0.141 Вы Enter жали в контроле ITextDataControl? Например в IMemoDataControl у меня работает KeyPress уровня форма.

Михаил, действительно, не на том контроле пробовал.
Для решения задачи используйте событие "OnKeyDown" или "OnKeyUp". Чтобы не срабатывала кнопка "Ок" в свойствах кнопки установите "IsDefault" = false.

Спасибо.
Наконец то вернулся к задаче. Да в KeyDown Enter отрабатывает, а вот Tab нет? В принципе через событие OnExit я получил, почти тот же эффект, что и от Tab, но это несколько не то.

Михаил - обработчик нажатия Tab вроде бы вообще заложен в Windows, поэтому сомневаюсь, что можно будет переопределить на что-то свое.
На OnExit, думаю, подходящий вариант.

Показать все комментарии