在JavaFX 8中,我试图在表格中添加新行后使单元格进行编辑,以优化用户体验。

    hourTableView.getSelectionModel().select(newHour);
    int row = hourTableView.getSelectionModel().getSelectedIndex();
    hourTableView.edit(row, hourTableAmountTableColumn);


选择正确的行,但是该单元格不会进入编辑模式。好吧,我已经看到它偶然发生,但是很难再现。我究竟做错了什么?

最佳答案

Insert row in JavaFX TableView and start editing is not working correctly中找到了解决方案

您需要先调用hourTableView.layout(),然后再调用hourTableView.edit()
当新行不可见时,它会变得更加复杂,我发现hourTableView.scrollTo()有助于在hourTableView.layout()之前调用它。

07-24 18:52