7

次のコードを使用して、単一の列を持つテーブルを作成しようとしています:

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

ただし、「都市名」列の後に空白列が続くテーブルを取得します

私はJavaFxを初めて使用するので、これを行うためのより良い方法があるかもしれません.

4

1 に答える 1

14

過去にcssプロパティをいじって空白の列を自分で「削除」しようとしたことを思い出します。回避策は次のいずれかでした-スペース全体を手動でカバーするよう
にの優先幅を設定します。cityColumn

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

-2ボーダー幅用。また、列幅プロパティをテーブル幅プロパティに直接バインドすることもできます。これにより、テーブル幅のサイズが変更されると、列幅が自動的に更新されます。この回答https://stackoverflow.com/a/10152992/682495を参照してください。
または、
- 列のサイズ変更ポリシーを次のように設定しますCONSTRAINED_RESIZE_POLICY

table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
于 2012-06-14T13:39:40.060 に答える