我试图为任务做一个时间记录。这些任务将显示在 JavaFX 表视图中。我使TableView可编辑,因此用户只需双击单个单元格即可更改值。所以现在我试图自定义选择后,你点击回车。例如,如果您已完成任务的名称,我想重新选择相同的单个单元格。这就是我正在努力解决的问题。
我已尝试通过选择模型获取单元格。我尝试过获取单元格 im 的表位置。我也尝试过使用焦点模型,但最终只是对焦而不是选择单元格。(显然)
@FXML
private TableView<Task> taskTableView;
@FXML
private TableColumn<Task, Task> taskTableColumn;
@FXML
private TableColumn<Task, String> durationTableColumn;
@FXML
private TableColumn<Task, String> descriptionTableColumn;
public class TaskController {
taskTableColumn.setOnEditCommit(e -> {
// Selection Mode is Single, dont worry
Task selectedTask = taskTableView.getSelectionModel().getSelectedItem();
// 'Edit the cell value' code, not necessary for this
taskTableView.getSelectionModel().select(selectedTask);
}
}
我希望再次选择单元格,因为我在单个选择上具有属性。但事实证明,它只是选择了一行中的最后一个单元格。
编辑:这对我来说也不起作用。
int selectedIndex = taskEntryTableView.getSelectionModel().getSelectedIndex();
taskEntryTableView.getSelectionModel().select(selectedIndex);
我突然想到了一个想法,但我不确定这是否可能。由于看起来我尝试的方法只是选择行,是否可以从列中获取其他位置?
白猪掌柜的
相关分类