JComboBox: хотите, чтобы первая запись была пустой - PullRequest
9 голосов
/ 08 июня 2011

У меня есть jcombobox, значения которого поступают из списка. Я хочу, чтобы первое значение было пустым из выпадающего списка. Я подошел к этому, поставив сначала новый объект типа списка, как показано в примере:

 final List<Object> list = getObjectsList();
  list.add(new Object()); 

Но это приводит к нулевому указателю, а если сделать

list.add(null);

это решает проблему, но затем дает мне еще одну проблему в другом месте с методом Comparator. Так что любая работа по раундам была бы отличной благодарностью.

Ответы [ 3 ]

20 голосов
/ 19 августа 2013

Вы можете также установить выбранный индекс на -1 после добавления элементов, но до прослушивателя событий.

    JcomboBox.setSelectedIndex(-1);

Это решение будет работать лучше, если ваш JcomboBox использует дженерики.

14 голосов
/ 08 июня 2011

Не JComboBox.insertItemAt("", 0); у вас не работает? Вы должны добавить проверку для пустой записи тоже

2 голосов
/ 08 июня 2011

ИМХО, это зависит от того, что вы будете делать с этой "пустой записью".Несколько идей:

Попробуйте добавить пустую строку.

Добавьте объект / null И переопределите метод getSelectedIndex ().

...