У меня есть редактируемый JComboBox
, и я хочу добавить к нему значения из его ввода, т. Е. Когда я набираю что-то в JComboBox
и нажимаю ввод, я хочу, чтобы текст появлялся в списке JComboBox
:
public class Program extends JFrame
implements ActionListener {
private JComboBox box;
public static void main(String[] args) {
new Program().setVisible(true);
}
public Program() {
super("Text DEMO");
setSize(300, 300);
setLayout(new FlowLayout());
Container cont = getContentPane();
box = new JComboBox(new String[] { "First", "Second", "..." });
box.setEditable(true);
box.addActionListener(this);
cont.add(box);
}
@Override
public void actionPerformed(ActionEvent e) {
box.removeActionListener(this);
box.insertItemAt(box.getSelectedItem(), 0);
box.addActionListener(this);
}
}
к сожалению, когда я нажимаю ввод, два значения были вставлены вместо одного.
Почему?