gpt4 book ai didi

java - 在 JavaFX 中获取行号

转载 作者:太空宇宙 更新时间:2023-11-04 09:06:49 25 4
gpt4 key购买 nike

我想知道是否有任何方法可以获取JavaFX TableView的行号。

例如,我有一个表,它获取 10 行 3 列的文本文件中的数据,我想要一个监听器,该监听器应该能够获取整行并且仅获取其行号。

 @FXML private TableView tableView;

private void table() {

TableColumn fn = new TableColumn("First Name");
TableColumn ln = new TableColumn("Last Name");
TableColumn age = new TableColumn("Age");

fn.setCellValueFactory(new PropertyValueFactory<TextFileData, String>("First Name"));
ln.setCellValueFactory(new PropertyValueFactory<TextFileData, String>("Last Name"));
age.setCellValueFactory(new PropertyValueFactory<TextFileData, String>("Age"));

tableView.setItems(dataFromTextFile);
tableView.getColumns().addAll(fn,ln,age);
ObservableList<TablePosition> selectedCells = tableView.getSelectionModel().getSelectedCells();
selectedCells.addListener((ListChangeListener.Change<? extends TablePosition > change) -> {
//do something
});
}

在行

 ObservableList<TablePosition> selectedCells = tableView.getSelectionModel().getSelectedCells();

我尝试将 TablePosition 更改为 TableRow,但随后我无法使用 addListener 方法。我想要的是能够单击整行,然后单击该行将输出其所在位置的行号

感谢任何帮助!

最佳答案

找到解决方案了!事实证明,我可以调用 setRowFactory 来创建 lambda,然后创建一个新的 TableRow 并将其设置为 setOnMouseClicked 事件,而我所要做的就是制作 int rowNum = tableview.getSelectionModel().getSelectedIndex!

关于java - 在 JavaFX 中获取行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60136089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com