Я использую JTable для отображения данных, полученных из потоковой передачи данных.Java Swing: пересчет значений в JTable, чтобы использовать TableModel или написать собственный редактор?
Каждая точка данных представлена как объект типа X, который имеет одно поле интереса, позволяет называть его значением. Моя реализация интерфейса TableModel имеет HashMap объектов X, наложенных на X.getId().
Пользователи GUI могут изменять значения с помощью набора JSpinner в качестве настраиваемого редактора для каждой ячейки в соответствующих столбцах.
Однако значение также зависит от значений X.valueField в других строках.
Например, моя таблица представляет 3 объекта X1, X2 и X3. Их соотношение:
X1.valueField = X2.valueField + X3.valueField
Если пользователь изменяет X1, один из X2 и X3 поддерживается постоянным (в зависимости от бизнес-логики), а другое значение изменяется чтобы поддерживать взаимосвязь. Аналогично, пользователь может также изменить X2 или X3.
Должен ли я инкапсулировать отношения в моей реализации TableModel, или я должен расширить свой редактор таблиц, чтобы учесть способы изменения значения?
Я думаю, что оба подхода будут работать, но я не уверен, какой из них правильный. Документация от Sun и других форумов предлагает расширить пользовательский редактор, чтобы контролировать значение поля, но он не учитывает связь этого значения с другими членами базовой модели данных.
Любые мысли очень ценятся.
00rush