У меня есть редактируемый 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);
}
}
, к сожалению, когда я нажимаю клавишу ввода, были вставлены два значения вместо одного.
Почему?