Программные действия
Любой подходящий компонент может получать действия, созданные и назначаемые программно в контроллере экрана. Этот способ прост, но может сделать контроллер более громоздким и не позволяет переиспользовать действие в XML.
Ниже пример, в котором кнопка покажет пользователю "Hello" при нажатии:
-
Инжектируйте компонент в контроллер экрана:
@ViewComponent private JmixButton actionButton; -
Задайте действие, создав экземпляр класса
BaseAction:@Subscribe public void onInit(final InitEvent event) { actionButton.setAction( new BaseAction("action") .withText("Click me!") .withHandler(actionPerformedEvent -> notifications.show("Action performed!"))); }
| Сравните этот подход с идентичным примером в разделе Собственные типы действий, который позволяет переиспользовать действия в разных экранах. |