table.getValueAt(table.getSelectedRow(), 1)
在我选择另一列之前,它不会返回任何内容。如何在JTable中输入当前文本?
答案 0 :(得分:0)
你可以在JTable列中使用jcombobox和自动完成装饰器,这里是Using a Combo Box as an Editor的方法。在密钥类型集上DefaultComboBoxModel 使用JList
答案 1 :(得分:0)
您可以通过调用方法来使用编辑器:
Component component = table.getEditorComponent();
使用此编辑器获取正在编辑的文本,或者将文档侦听器附加到其中,或者您喜欢的任何内容,如下所示:
JTextComponent editor = (JTextEditor)component;
String text = editor.getText();
editor.getDocument().addDocumentListener(new DocumentListener() {
void changedUpdate(DocumentEvent e) { ... }
void insertUpdate(DocumentEvent e) { ... }
void removeUpdate(DocumentEvent e) { ... }
});