Combobox JavaFX:表视图中的组合框焦点问题

Combobox JavaFX:表视图中的组合框焦点问题,combobox,javafx,tableview,tablecell,Combobox,Javafx,Tableview,Tablecell,场景:我在JavaFx中创建了一个包含两列的表视图。我已经用一些示例数据填充了表。现在,我必须编辑表格的单元格。为此,我创建了一个新类(ComboTableCell),它覆盖TableCell类。这个类定义了一个可编辑的组合框的单元工厂,如果我使用鼠标点击遍历表格,这个组合框将非常有效。然而,当我使用键盘标签进行传输时,我面临一个问题 问题:使用选项卡选择第一个单元格时,组合框及其编辑器将获得焦点。因此,用户可以直接开始编辑单元格 问题是,当我编辑完第一个单元格后,我使用TAB按钮移动到下一个单

场景:我在JavaFx中创建了一个包含两列的表视图。我已经用一些示例数据填充了表。现在,我必须编辑表格的单元格。为此,我创建了一个新类(ComboTableCell),它覆盖TableCell类。这个类定义了一个可编辑的组合框的单元工厂,如果我使用鼠标点击遍历表格,这个组合框将非常有效。然而,当我使用键盘标签进行传输时,我面临一个问题

问题:使用选项卡选择第一个单元格时,组合框及其编辑器将获得焦点。因此,用户可以直接开始编辑单元格

问题是,当我编辑完第一个单元格后,我使用TAB按钮移动到下一个单元格,但是,下一个单元格中的组合框没有焦点,因此用户无法像第一个单元格那样直接开始键入。即使是表格单元格也无法获得焦点

当我按tab键时,我尝试使用下面的代码将焦点返回到组合框

Platform.runLater(new Runnable() {
        @Override
        public void run() {
            comboBox.requestFocus();

            //I have also tried with comboBox.getEditor().requestFocus(); but still the issue persists
            comboBox.getEditor().selectAll();
        }
    });

请帮我解决这个问题。

我不得不面对同样的问题,我刚刚找到了解决办法。如果您将其设置为可编辑组合,它将解决您的问题

ComboBox cb=新的ComboBox();
cb.setEditable(true)