Платформы привязки данных Swing - PullRequest
25 голосов
/ 08 марта 2010

Почти тот же вопрос был задан год назад , но в этой области произошли некоторые новые разработки.

Выбор (привязки данных) фреймворка для Swing-приложения кажется довольно сложным. JSR-295 заброшен, многие свинг-фреймворки, которые обеспечивают привязку, находятся в процессе разработки, заброшены или слишком тяжелы для моего довольно простого приложения. JGoodies Swing Suite стоит дорого, но, к счастью, его библиотеки бесплатны.

Кто-нибудь имеет реальный опыт нового UFaceKit . Это выглядит многообещающе, но довольно незрелым. Я особенно заинтересован в реализации Swing и документации. Любое понимание графика разработки UFaceKits будет оценено, потому что я могу некоторое время придерживаться выбора фреймворка. В требованиях нет ничего особенного, просто работает связывание с красивым API.

Я также обнаружил Mogwai dataBinding , но он кажется довольно неполным и требует ручной активации синхронизации, что делает его бесполезным по сравнению с крупнозернистой синхронизацией , легко записываемой вручную .

Неполные каркасы включают как минимум Spring RCP и множество вилок JSR-296.

Итак, действительно ли привязка данных JGoodies является единственным реалистичным выбором? Или есть другие жизнеспособные решения?


Edit:
Этот вопрос, по-видимому, занимает достаточно высокое место в Google, и принятый ответ отражает время, когда вопрос был задан изначально. Любой, кто хочет создать новое приложение Swing, которое использует привязку данных, должен проверить все ответы, у них есть информация о последних достижениях в этой области.

Ответы [ 6 ]

4 голосов
/ 09 марта 2010

BBB (в значительной степени официальный форк JSR 295) отлично работает.

3 голосов
/ 09 февраля 2011

Среда Beanfabrics содержит своего рода привязку данных. Фактически это реализация шаблона Presentation Model: http://code.google.com/p/beanfabrics/

0 голосов
/ 31 декабря 2013

Проект Melasse может склеивать пользовательский интерфейс и бобы без создания класса: Binder.bind(/* source, target, options */).

например. Чтобы включить действие / кнопку только в том случае, если текстовое поле не пустое: https://github.com/cchantep/melasse/blob/master/README.md#bind-buttonaction-to-provided-value.

0 голосов
/ 29 июля 2011

Я пишу библиотеку, которая поддерживает привязку данных Swing с использованием Views, Binders и ControlAccessors для компонентов Swing.

См. http://www.jdal.org/doc/swing/jdal-swing-binding.php

0 голосов
/ 21 апреля 2011

Мы собираемся использовать сейчас Eclipse WindowBuilder , и я думаю, что оно должно хорошо работать

См. Пример привязки данных Swing в http://code.google.com/javadevtools/

Это использует beansbinding-1.2.1.jar, то есть проект jdesktop.org. Если это связано с JSR-295, я не знаю (пожалуйста, отредактируйте)

0 голосов
/ 09 февраля 2011

Этот проект также имеет привязку данных к формам, которые легко использовать, я создал этот проект 2 года назад, и с тех пор он вырос из моих идей и соавторов.

https://github.com/MarkyVasconcelos/Towel

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...