Компоненты данных можно создавать и использовать программно.
В следующем примере мы создадим экран редактирования с тем же данными и визуальными компонентами, которые мы определяли декларативно в предыдущем примере, на чистой Java без XML-дескриптора.
link:../../../../../../source/gui/data_comp/data_comp_3.java[role=include]
-
DataComponents
- это фабрика для создания компонентов данных. -
Регистрируем в экране экземпляр
DataContext
, чтобы обеспечить работу стандартного действия commit. -
Загрузчик
orderDl
загружает данные в контейнерorderDc
. -
Загрузчик
orderDl
помещает загруженные сущности в data context для отслеживания изменений. -
linesDc
создаётся как контейнер свойства. -
Определяем запрос для загрузчика
customersDl
. -
ContainerValueSource
используется для связи одиночных полей с контейнерами данных. -
ContainerOptions
предоставляет список опций для полей выбора. -
ContainerTableItems
используется для связи таблиц с контейнерами. -
Переопределяем
getEditedEntityContainer()
, чтобы указать контейнер, вместо аннотации@EditedEntityContainer
. -
Загружаем данные перед отображением экрана. Идентификатор редактируемой сущности будет автоматически передан в загрузчик
orderDl
.