JavaFx 2 создать TableView с одним столбцом

Я пытаюсь создать таблицу с одним столбцом, используя следующий код:

TableView<String> table = new TableView<String>();
table.getColumns().clear();
table.getColumns().add(new TableColumn<String, String>("City Name"));
table.setItems(cityList);

Однако я получаю таблицу со столбцом "Название города", за которым следует пустой столбец

Я новичок в JavaFx, так что может быть лучший способ сделать это.

1 ответ

Решение

Напомню, что сам пытался "убрать" пустые столбцы, поиграв со свойствами css в прошлом без удачи. Обходной путь был либо,
- установить ширину префа cityColumn чтобы покрыть все пространство вручную:

TableColumn<String, String> cityColumn = new TableColumn<String, String>("City Name");
cityColumn.setPrefWidth(table.getPrefWidth() - 2);

-2 для ширины границы. Также вы можете напрямую привязать свойство ширины столбца к свойству ширины таблицы, в результате ширина столбца обновляется автоматически при изменении размера таблицы. Смотрите этот ответ /questions/15334694/javafx-2-avtomaticheskaya-shirina-stolbtsa/15334717#15334717.
Или же,
- установить политику изменения размера столбца в CONSTRAINED_RESIZE_POLICY:

table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
Другие вопросы по тегам