Я пытаюсь установить ширину столбца таблицы в процентах.
Я начал отсюда: Как установить ширину столбца в табличном представлении в javafx? но так, даже если я удаляю вставки, он не работает должным образом.
Вот мой код:
private TableColumn<NetworkDrive, ?> createTableColumn(String columnName, String propertyName, String alignment,
double widthPercentage) {
TableColumn<NetworkDrive, String> tableColumn = new TableColumn<>(columnName);
tableColumn.setCellValueFactory(new PropertyValueFactory<>(propertyName));
tableColumn.setStyle(alignment);
tableColumn.setReorderable(false);
tableColumn.setResizable(false);
tableColumn.prefWidthProperty().bind(networkDriveTableView.widthProperty()
.multiply(widthPercentage / 100.0)
.subtract(((networkDriveTableView.getInsets().getLeft() + networkDriveTableView.getInsets().getRight()) / COLUMN_COUNT)));
return tableColumn;
}
Вывод:
Если я добавлю +0,7 к части вычитания:
.subtract(((networkDriveTableView.getInsets().getLeft() + networkDriveTableView.getInsets().getRight()) / COLUMN_COUNT) + 0.7));
Она отлично работает, и я не знаю почему.Может кто-нибудь объяснить это?Я что-то не так делаю?
Столовых вставок по 10 на всех.У меня 3 колонки.
ура