当前位置: 首页 > 面试题库 >

如何通过值设置所选索引JComboBox

宦翔飞
2023-03-14
问题内容

我想通过值而不是索引在JComboBox中设置选定的索引。怎么做?例

public class ComboItem {

    private String value;
    private String label;

    public ComboItem(String value, String label) {
        this.value = value;
        this.label = label;
    }

    public String getValue() {
        return this.value;
    }

    public String getLabel() {
        return this.label;
    }

    @Override
    public String toString() {
        return label;
    }
}

JComboBox test = new JComboBox();
test.addItem(new ComboItem(0, "orange"));
test.addItem(new ComboItem(1, "pear"));
test.addItem(new ComboItem(2, "apple"));
test.addItem(new ComboItem(3, "banana"));
test.setSelectedItem("banana");

好的,我已经稍微修改了我的问题。我忘了我在JComboBox中有一个自定义项目,这使其变得更加困难。我不能做setSelectedItem,因为我在每个项目中都有一个ComboItem。因此,我该如何完成呢?


问题答案:

setSelectedItem("banana")。您只需阅读javadoc即可找到它。

编辑:由于您更改了问题,我将更改答案。

如果要选择带有“香蕉”标签的项目,则有两种解决方案:

  1. 遍历项目以找到具有给定标签的一个(或其中一个的索引),然后调用setSelectedItem(theFoundItem)(或setSelectedIndex(theFoundIndex)
  2. 覆盖equalshashCodeComboItem使两个ComboItem具有相同名称的实例相等,并简单地使用setSelectedItem(new ComboItem(anyNumber, "banana"))


 类似资料:
  • 问题内容: 我想在numpy数组中设置特定值(以将它们从按行均值计算中排除)。 我试过了 看着,我只会看到我的期望。 我想到了一个替代方案: 没发生什么事。我究竟做错了什么? 问题答案: 将适当元素设置为NaN的矢量化方法 @unutbu的解决方案必须摆脱您得到的值错误。如果您希望获得性能,可以这样使用- 样品运行- 向量化方法可直接计算适当元素的按行平均值 如果要获取掩盖的平均值,则可以修改较早

  • 我创建了一个带有JComboBox CellEditor列的JTable。很好。然而,当我试图通过组合框检索所选值时,我只得到鼠标在特定行中选择的值。我似乎无法按每行获取所选值。这是我的代码:

  • 问题内容: 我正在尝试使用HashMap将唯一字符串映射到字符串ArrayList,如下所示: 基本上,我希望能够通过数字访问密钥,而不是使用密钥名称。我希望能够访问所述键的值,以对其进行迭代。我在想像这样的事情: 是否有捷径可寻? 问题答案: 您可以通过调用来遍历键,也可以通过调用来遍历项。遍历条目可能会更快。 如果要确保按插入键的顺序遍历键,请使用。 顺便说一句,我建议将地图的声明类型更改为。

  • 问题内容: 大家好,我将我的下拉列表与Jquery-Select2绑定在一起。它的工作正常,但现在我需要使用Jquery-Select2绑定多值selectBox。 我的DropDwon 通过此链接 http://ivaynberg.github.com/select2/ 我正在使用Mutiple Value Select Box,我可以将dropdwon与 它的工作正常,但现在我需要在编辑模式的

  • 我对Java很陌生,只是有点纠结于数组。我有一个代码块,我已经写了当遵循教程,但正在努力理解它,希望有人能解释给我。 null 对不起,如果这是一个琐碎的问题给你,但这是最好的地方,我可以想到转向。

  • 我的df有列'country'和'country code'作为当前索引。如何删除此索引并创建只计算行数的新索引?我会留下它的样子。我想做的就是在国家旁边添加一个新的索引。多谢!