У меня проблема с добавлением функциональности в мою программу. Я использую JavaFX и Table View. Я не знаю, как я могу реализовать метод, который будет получать данные из определенного столбца.
Я пытаюсь реализовать решение из этого сказал:
JavaFX Как получить все значения одного столбца из TableView?
Но я не совсем понимаю, как мне отправить инициализированный класс TableColumn в метод totalPaidSaving
И: Как получить выбранную TableCell в JavaFX TableView
Я также нашел несколько различных решений, использующих getSelectionModel().getSelectedCells()
, но в этом случае мне нужно использовать кнопку, и какой-нибудь код, который получит данные из определенного столбца.
Фрагмент класса MainControl. Место, где метод вызывается:
addButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
Operation operation = new Operation();
operation.addRecord(dateTextField, distanceTextField, lpgAmountTextField, lpgPriceTextField,
petrolAmountTextField, petrolPriceTextField, paidLabel, savingLabel, gasEfficiencyLabel,
contentTable, totalSavingsLabel);
operation.totalPaidSaving(contentTable, totalSavingsLabel);
}
});
Фрагмент конфигурации моего TableView также в классе MainControl.
@SuppressWarnings("unchecked")
public void configurateTable() {
TableColumn<GasRecords, String> savingColumn = new TableColumn<GasRecords, String>(SAVING_COLUMN);
savingColumn.setCellValueFactory(new PropertyValueFactory<>("saving"));
contentTable.getColumns().addAll(dateColumn, distanceColumn, lpgAmountColumn, lpgPriceColumn, petAmountColumn,
petPriceColumn, paidColumn, savingColumn, gasEfficiencyColumn);
}
Фрагмент класса Операция:
public void totalPaidSaving(TableView<GasRecords> cT, Label tSL) {
String totalSavingValue = "0";
//the code that calculates the sum of the values of a particular column
tSL.setText(String.format("%.2f zł", totalSavingValue));
}
Я знаю, что использовать String вместо double плохо, но сейчас я бы хотел решить эту проблему в этой форме.
Ссылка на визуализацию моего приложения и пример столбца, который я хочу суммировать.
https://zapodaj.net/d8fc7ece3f629.jpg.html
Моя цель состоит в том, чтобы после нажатия кнопки «Добавить» приложение показывало мне сумму всех строк сбережений из столбца сохранения в определенной метке. Остальная часть приложения работает.