Java 自动完成装饰(组合框);在JTable中无法完美工作
我在Java 自动完成装饰(组合框);在JTable中无法完美工作,java,netbeans,jtable,jcombobox,swingx,Java,Netbeans,Jtable,Jcombobox,Swingx,我在JPanel中使用JCombobox和editable=true,并在同一面板中使用JTable,其中的列设置为显示combobox作为其字段类型。我申请了 AutoCompleteDecorator.decorate(cb); 到JCombobox,它在JTable之外,工作非常正常,但是当我将同一行代码应用到JTable内的combobox时,它会选择与键入的键匹配的数据的第一次出现 我如何解决这个问题。有什么建议吗 请看下面的图片,其中选择的正是我键入的项目 这是JTable中c
JPanel
中使用JCombobox
和editable=true
,并在同一面板中使用JTable
,其中的列设置为显示combobox作为其字段类型。我申请了
AutoCompleteDecorator.decorate(cb);
到JCombobox
,它在JTable
之外,工作非常正常,但是当我将同一行代码应用到JTable内的combobox时,它会选择与键入的键匹配的数据的第一次出现
我如何解决这个问题。有什么建议吗
请看下面的图片,其中选择的正是我键入的项目
这是JTable
中combobox的图像
当我按w键时,它会选择第一个出现的
windy
,并将其设置在单元格中。您尚未发布代码,但是否已检查您使用的TableCellEditor
您可能使用了DefaultTableCellEditor。如果是这种情况,请将其更改为ComboxCellEditor
例如:
JCombobox cmbItems = new JComboBox();
cmbItems.addItem("choice1");
cmbItems.addItem("choice2");
cmbItems.addItem("choice3");
AutoCompleteDecorator.decorate(cmbItems);
TableColumn colWithCmb = table.getColumnModel().getColumn(0);
colWithCmb.setCellEditor(new ComboBoxCellEditor(cmbItems));
您尚未发布代码,但是否检查了使用的TableCellEditor 您可能使用了DefaultTableCellEditor。如果是这种情况,请将其更改为ComboxCellEditor 例如:
JCombobox cmbItems = new JComboBox();
cmbItems.addItem("choice1");
cmbItems.addItem("choice2");
cmbItems.addItem("choice3");
AutoCompleteDecorator.decorate(cmbItems);
TableColumn colWithCmb = table.getColumnModel().getColumn(0);
colWithCmb.setCellEditor(new ComboBoxCellEditor(cmbItems));