#java #swing #data-binding
#java #swing #привязка к данным #привязка данных
Вопрос:
Я довольно новичок в JAVA. У меня есть модель домена (содержащая данные), и у меня есть модель просмотра (предоставляющая графический интерфейс). Теперь у меня есть несколько JLabels (или любых других J-компонентов) в разных окнах, привязанных к одному и тому же источнику данных в модели домена.
Я пытался использовать beansbinding, но, к сожалению, beansbinding, похоже, не поддерживает привязку нескольких виджетов к одному источнику — обновляется только один виджет, остальные остаются нетронутыми.
JGoodies для меня невозможен из-за вопросов с лицензией.
Кто-нибудь знает другой (бесплатный) проект привязки данных для SWING?
Заранее спасибо, Джоан
Комментарии:
1. Я не знаю никакой альтернативы и написал свой собственный VMC-Databinding-Manager
2. вероятно, что-то не так с кодом, который вы не показываете 😉 Нет ограничений на количество привязок для любого свойства, поэтому при правильной настройке все метки должны обновляться при обновлении отображаемого свойства bean
Ответ №1:
Взгляните на образец приложения Client Editor, поставляемого с NetBeans (Новый проект -> Образцы / Java / Client Editor).
- Откройте основной фрейм: ClientEditor.java
- Добавьте где-нибудь метку (например,в левом нижнем углу)
- Измените его привязку (в окне свойств) и используйте ту же «формулу», что и
usernameLabel
(справа от «Информация о клиенте:»), которая:Form[${client.firstName} ${client.surname}]
Результат: