JComboBox的getSelectedItem()有什么意义?

时间:2010-03-29 06:35:45

标签: java user-interface jcombobox

我刚刚阅读了JavaDoc for JComboBox(我保证我有生命......我不是为了好玩而读书。= P),我认为我对我的程序遇到的问题可以归结为getSelectedItem()方法。文档说:

  

返回当前所选项目。

     

如果组合框是可编辑的,则可能没有使用 addItem insertItemAt 或数据构造函数将此值添加到组合框中。

如果您无法获取使用这些方法或构造函数添加的值,该方法的用途是什么? 可以如何从“可编辑的”JComboBox中获取值?

链接到JavaDoc: http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JComboBox.html#getSelectedItem()

4 个答案:

答案 0 :(得分:2)

用户在JComboxBox中添加的额外值将 not 添加到ComboBoxModel中,但将通过getSelectedItem()

作为java.lang.String提供

答案 1 :(得分:2)

  

如果你不能得到那些值   添加了这些方法或与   构造函数,有什么用   方法?我怎样才能获得价值   来自“可编辑的”JComboBox?

这不是文档所说的。文档说可能没有使用add / insertItem添加所选项目,如果用户自己编辑/输入值,则可能就是这种情况。

在任何情况下,getSelectedItem()都会为您提供在组合框中选择的任何内容,无论它是您填写的值之一,还是用户键入的值。

答案 2 :(得分:0)

final Object object = jComboBox.getEditor().getItem();
if (object instanceof String) {
    final String string = (String)object;
}

答案 3 :(得分:0)

适用于在组合框模型中允许某些输入超出所提供的值范围的情况。