TableCell,获取其在 TableView 中的位置
TableCell, getting its position in TableView
我怎样才能在 class 实现中获得 TableCell 的位置,这样我就可以做这样的事情: ?
@Override
public void updateItem(Integer item, boolean empty) {
super.updateItem(item, empty);
int x = thisCellColumnNumber();
int y = thisCellRowNumber();
if((x == 2) && (y == 3))
setStyle(".....");
您可以使用 this.getTableColumn();
获得实际的 TableColumn
。如果你真的需要索引,你可以做
TableColumn<...> column = getTableColumn();
int colIndex = getTableView().getColumns().indexOf(column);
这有点难看(而且很慢)。但是,只知道该列就足够了。 (另外,你真的 "know this already";你的 table 单元格来自一个 table 单元格工厂,它附加到一个列;所以你总是可以计算列索引并将它传递给单元格当你创建它时。)
行索引正好
this.getIndex();
有关所有可用方法,请参阅 Javadocs。
我怎样才能在 class 实现中获得 TableCell 的位置,这样我就可以做这样的事情: ?
@Override
public void updateItem(Integer item, boolean empty) {
super.updateItem(item, empty);
int x = thisCellColumnNumber();
int y = thisCellRowNumber();
if((x == 2) && (y == 3))
setStyle(".....");
您可以使用 this.getTableColumn();
获得实际的 TableColumn
。如果你真的需要索引,你可以做
TableColumn<...> column = getTableColumn();
int colIndex = getTableView().getColumns().indexOf(column);
这有点难看(而且很慢)。但是,只知道该列就足够了。 (另外,你真的 "know this already";你的 table 单元格来自一个 table 单元格工厂,它附加到一个列;所以你总是可以计算列索引并将它传递给单元格当你创建它时。)
行索引正好
this.getIndex();
有关所有可用方法,请参阅 Javadocs。