Как программист Swing, я не могу поверить, что это так сложно, но, по-видимому, это так.Как обновить значения табличного значения javafx
У меня есть табличный экран javafx, и я хочу изменить одно из значений модели и правильно обновить экран.
Я НЕ хочу использовать SimpleStringProperty и его аналогию по ряду причин. Один из них - я хочу использовать POJO. Другое дело, что мои элементы данных не являются строками! (они не являются простыми типами данных, такими как целые). Поэтому использование этих вопросов не может быть и речи.
Я также не хочу знать о каких-либо хаках, таких как скрытие и скрытие столбцов, и любая такая глупость. Я хочу знать правильный путь (™), чтобы сделать это, и я оставлю хаки для других.
Способ сделать это в Swing, конечно, тривиальным. Вы бы назвали model.fireTableRowsUpdated (индекс, индекс);
Вы пробовали обновить значение в 'ObservableList', которое вы установили в TableView? –
ItachiUchiha
Вы должны использовать наблюдаемые свойства; они не обязательно должны быть строками или обертками для примитивов, но вы можете использовать ['ObjectProperty'] (http://docs.oracle.com/javase/8/javafx/api/javafx/beans/property/ObjectProperty. html), например. Если у вас есть существующие объекты стиля JavaBean, вы можете использовать [адаптер] (http://docs.oracle.com/javase/8/javafx/api/javafx/beans/property/adapter/JavaBeanObjectProperty.html) (хотя Конечно, компонент, построенный с использованием свойств JavaFX, по-прежнему придерживается шаблона JavaBean). –
ObservableList помогает только на уровне списка, а не на уровне отдельных объектов. – user2709454