Какой смысл в getCelectedItem () JComboBox? - PullRequest
0 голосов
/ 29 марта 2010

Я только что прочитал JavaDoc для JComboBox (я обещаю, что у меня есть жизнь ... Я не читал для развлечения. = P), и я думаю, что проблемы, с которыми я сталкиваюсь с моей программой, можно отнести к getSelectedItem () метод. В документации написано:

Возвращает текущий выбранный элемент.

Если поле со списком доступно для редактирования, то это значение, возможно, не было добавлено в поле со списком с помощью addItem , insertItemAt или конструкторов данных.

Если вы не можете получить значения, которые были добавлены с помощью этих методов или с помощью конструктора, для чего нужен этот метод? И как может получить значение из "редактируемого" JComboBox?

Ссылка на JavaDoc: http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JComboBox.html#getSelectedItem()

Ответы [ 4 ]

2 голосов
/ 29 марта 2010

Если вы не можете получить значения, которые были добавлены с этими методами или с конструктор, какой пользы метод? И как я могу получить значение из "редактируемого" JComboBox?

Это не то, что говорят документы. В документах говорится, что выбранный элемент, возможно, не был добавлен с помощью add / insertItem, что вполне может иметь место, если пользователь сам редактировал / вводил значение.

В любом случае, getSelectedItem () дает вам все, что выбрано в поле со списком, является ли оно одним из значений, которые вы указали, или одним из введенных пользователем.

2 голосов
/ 29 марта 2010

дополнительное значение, добавленное пользователем в JComboxBox, не будет добавлено в ComboBoxModel , но будет доступно как java.lang.String через getSelectedItem ()

0 голосов
/ 29 марта 2010

Полезно для случаев, когда вы разрешаете определенный ввод за пределы заданного диапазона значений в модели комбинированного списка.

0 голосов
/ 29 марта 2010
final Object object = jComboBox.getEditor().getItem();
if (object instanceof String) {
    final String string = (String)object;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...