感谢您阅读我的问题。
我正在使用 TreeTableView,并通过遵循此答案中提出的结果,设法将布尔值显示到其中一列中。它工作得很好,但是在应用时,复选框具有 TOP_LEFT 对齐方式,而不是 CENTER 对齐方式(CENTER 对齐方式是在常规 TableView 上使用复选框的默认设置):
^ 这是我的 TOP_LEFT 对齐方式
我进行了搜索,但是将对齐方式更改为单元格内容的常规解决方案在这里不起作用,根本没有产生任何结果。
有没有办法将对齐更改为 CENTER 或 TOP_CENTER?我正在使用Java8。
使用更多信息进行编辑 GUI 是用 FXML 制作的,TreeTableView 位于 TitledPane 中。使用此解决方案将文本单元格(同一个表,其他列)居中工作正常。从其他列中删除它不会影响 Checkbox 列
我尝试以两种不同的方式添加复选框,但它们都具有 TOP_LEFT 对齐方式:
colUsable.setCellFactory(CheckBoxTreeTableCell.forTreeTableColumn(colUsable));
另一个尝试:
colUsable.setCellFactory(new Callback<TreeTableColumn<MyType,Boolean>,TreeTableCell<MyType,Boolean>>() {
@Override
public TreeTableCell<MyType,Boolean> call( TreeTableColumn<MyType,Boolean> p ) {
return new CheckBoxTreeTableCell<>();
}
});
太感谢了。