JavaFX 2 Automatic Column Width

If your total number of columns are pre-known. You can distribute the column widths among the tableview’s width:

nameCol.prefWidthProperty().bind(personTable.widthProperty().divide(4)); // w * 1/4
surnameCol.prefWidthProperty().bind(personTable.widthProperty().divide(2)); // w * 1/2
emailCol.prefWidthProperty().bind(personTable.widthProperty().divide(4)); // w * 1/4

In this code, the width proportions of columns are kept in sync when the tableview is resized, so you don’t need to do it manually. Also the surnameCol takes the half space of the tableview’s width.

Leave a Comment