2013-11-26 4 views
2

Я хочу событие keydown (или up) для поля редактирования, поэтому я могу выполнить поиск базы данных для введенного текста. Это отлично работает в Windows, но на Android только Enter отправляется. Кто-нибудь знает, как захватить ключевые события в XE5 виртуальной клавиатуры?Delphi XE5 android appdowndown и события keyup

+0

OnChangeTracking делает работу для меня в этом случае. Спасибо – user3038203

ответ

1

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

+0

Это то же самое для iOS, так как у iOS нет событий OnKeyPress/OnKeyDown и т. Д. –

+0

Я не согласен с тем, что вы можете просто предположить, что ОП пытается сделать то, что им не нужно. Более разумно реагировать только на вход пользователя (ключевые события), чтобы избежать запуска обработки, когда вы программным образом устанавливаете какое-либо значение элемента управления редактированием (или другого элемента интерфейса), чтобы соответствовать, например, некоторому предварительно установленному результату. Было бы более полезно объяснить, что эквивалент FireMonkey onEditorActionListener (собственный механизм Android для таких вещей), если такой эквивалент даже существует. ;) – Deltics

+0

@Deltics Не будет такого прямого эквивалента. И я не думал о программных изменениях. Я думал о вводе из буфера обмена или жестов или swype –

Смежные вопросы