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