- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
感谢您阅读我的问题。
我正在使用 TreeTableView,并按照 this answer 上建议的结果设法将 boolean 值显示到其中一列中.它工作得很好,但是当应用时,复选框有一个 TOP_LEFT 对齐方式,而不是 CENTER 对齐方式(CENTER 对齐方式是在常规 TableView 上使用复选框的默认方式):
^ 这是我的 TOP_LEFT 对齐方式
我进行了搜索,但更改单元格内容对齐方式的常规解决方案在这里不起作用,根本没有产生任何结果。
有什么方法可以将对齐方式更改为 CENTER 或 TOP_CENTER?我正在使用 Java8。
编辑更多信息GUI 是用 FXML 制作的,在 TitledPane 中有 TreeTableView。使用this solution居中文本单元格(同一张表,其他列)工作正常。从其他列中删除它不会影响 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<>();
}
});
非常感谢。
最佳答案
我找到了居中的方法。类(class)CheckBoxTreeTableCell来自Java8实现。检查链接以查看文档。我发现改变对齐方式的方法是这样的:
colUsable.setCellFactory(new Callback<TreeTableColumn<MyType,Boolean>,TreeTableCell<MyType,Boolean>>() {
@Override
public TreeTableCell<MyType,Boolean> call( TreeTableColumn<MyType,Boolean> p ) {
CheckBoxTreeTableCell<MyType,Boolean> cell = new CheckBoxTreeTableCell<MyType,Boolean>();
cell.setAlignment(Pos.CENTER);
return cell;
}
});
关于java - 在 JavaFX TreeTableColumn 上居中 CheckBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30462738/
我一直在尝试构建一个树表并在 FXML 中定义 cellValueFactories。 当我尝试这个时,我在堆栈跟踪中收到以下错误 Exception in thread "JavaFX Applic
感谢您阅读我的问题。 我正在使用 TreeTableView,并按照 this answer 上建议的结果设法将 boolean 值显示到其中一列中.它工作得很好,但是当应用时,复选框有一个 TOP_
我制作了一个简单的 JavaFX 应用程序。在此应用程序中,有一个包含 2 列和一个复选框的树表。如果复选框被选中,第 2 列将可见,否则不可见。为此,我将树表列的可见属性绑定(bind)到复选框选定
我是一名优秀的程序员,十分优秀!