我在Java中使用gxt 2.0.3,并创建了一个SimpleComboBox,然后填充了2个字符串。

final SimpleComboBox<String> accessedComboBox = new SimpleComboBox<String>();
accessedComboBox.setTriggerAction(TriggerAction.ALL);
accessedComboBox.setEmptyText("Select a type");
accessedComboBox.add("Method 1");
accessedComboBox.add("Method 2");


我也有一个侦听器连接到另一个SimpleComboBox上,并且根据选择的内容,我需要从上面的accessedComboBox中添加或删除值

if (typeComboBox.getSimpleValue() == "Type 1")
{
    //Remove desktop app option
    accessedComboBox.remove("Method 2");
}
else
{
    if (accessedComboBox.??) { // <--- Check to see whether desktop app is an option
        //if not then add it
        accessedComboBox.add("Method 2");
    }
}


我无法确定要使用哪个函数来检查SimpleComboBox中是否已存在选项。我查看了this documentation,但我仍然没有运气。

有人可以帮忙吗?

最佳答案

不知道您是否知道这个。这有点时髦,但是您可以从ListStore获取String值。像这样:

for (SimpleComboValue<String> value : accessedComboBox.getStore().getModels()) {
   if (!value.getValue().equals("Method 1")){
       accessedComboBox.add("Method 1");
   }
}

10-07 20:36