Добрый день,
Существует возможность обработки события получения фокуса компоненом?
Спасибо
Добрый день,
Существует возможность обработки события получения фокуса компоненом?
Спасибо
Добрый день.
Такого API для UI компонентов нет, но Вы можете, получить Vaadin реализацию компонента, и, если нужный Вам компонент реализует FocusNotifier
, добавить слушатель на него.
...
import com.vaadin.event.FieldEvents.FocusNotifier;
...
@Inject
private TextField<String> textField;
@Inject
private Notifications notifications;
@Subscribe
protected void onInit(InitEvent event) {
textField.unwrap(FieldEvents.FocusNotifier.class)
.addFocusListener(focusEvent -> notifications.create()
.withCaption("Focused!")
.show());
}
Обычно, обработку фокуса на сервере делать не стоит, поскольку для их обработки потребуется послать AJAX запрос. Если вы расскажете нам о своём варианте использования, возможно мы сможем предложить вариант решения без использования обработчиков фокуса.
Сценарий такой:
Мне надо построить иерархаическую таблицу (TreedataGrid почти подходит) , со следующими требованиями:
Обычно, для таких задач принято иметь просто плоскую таблицу товара, а в стороне дерево групп, но мне это не подходит - пользователь хочет видеть все и там много расчетных полей в строках, которые должны суммироваться в строках групп - вес, объем, суммы и т.д.