Событие Row Click в полимере vaadin-grid

У меня есть требование, когда пользователь выбирает строку (или ячейку, если на то пошло) и нажимает какую-то клавишу (например, Enter, это настраивается), и мне нужно предпринять какое-то действие на основе нажатой клавиши (например, открыть диалоговое окно с подробной информацией о строке).

Просматривая код, я наткнулся на обработчик ключевых событий в vaadin-grid-keyboard-navigation-mixin.html . Но метод _onKeyDown обрабатывает только некоторые определенные ключи. И я не уверен, как передать обратный вызов этой функции.

Любые идеи относительно того, как это можно сделать. Я просто хочу прикрепить к каждой ячейке обработчик ключевого события, который фиксирует ключевое событие (опять же, это не исправлено) и выполняет соответствующий метод.

Надеюсь, мне удалось передать свои намерения.

Спасибо


person Sudipta Roy    schedule 11.12.2018    source источник
comment
Ну, вы можете немного объяснить больше? что именно является ключевым событием?   -  person Jai    schedule 11.12.2018
comment
Между ячейками vaadin-grid можно легко перемещаться с помощью клавиш Arrow. Нажатие клавиши Arrow генерирует KeyEvent, которое обрабатывается (см. ссылку). Я хочу расширить этот функционал.   -  person Sudipta Roy    schedule 11.12.2018
comment
this.addEventListener('keydown', this._bindMultiEvts); _bindMultiEvts(e){ this._onKeyDown; this._anOther; } Таким образом.   -  person Jai    schedule 11.12.2018
comment
@Jai, да, но как этого добиться? Я реализовал обработчик событий двойного щелчка, определив on-dblclick для каждого столбца.   -  person Sudipta Roy    schedule 11.12.2018


Ответы (1)


Ваш класс должен реализовать KeyNotifier, тогда вы можете добавить keyPressListener, т.е.:

addKeyPressListener(Key.ARROW_DOWN, event -> anAwesomeFuncion());
person Kerstin    schedule 11.12.2018
comment
Это на Яве. Я пытаюсь найти решения в JavaScript. - person Sudipta Roy; 11.12.2018