我想在combox上显示不同的值。我正在获得价值商店
Group Number
A 1
B 2
C 1
D 3
E 2
我想显示数字1,2,3。但现在我得到1,2,1,3,2。如何解决它。
这是我的代码:
ListStore<StringFieldModel> store = new ListStore<StringFieldModel>();
public ComboBox<StringFieldModel> combo= new ComboBox<StringFieldModel>();
combo.setMinChars(1);
combo.setFieldLabel(ZingTrack.getUICaptions().Vehicle());
combo.setDisplayField("name");
combo.setStore(store);
combo.setTriggerAction(TriggerAction.ALL);
combo.setEmptyText(ZingTrack.getUICaptions().Vehicle());
combo.setLoadingText("Searching...");
combo.setTypeAhead(true);
combo.setSelectOnFocus(true);
combo.setEditable(false);
combo.setHideTrigger(false);
combo.setWidth(150);## Heading ##
答案 0 :(得分:0)
您可以尝试在商店上设置ModelComparer,或者只是在将数据添加到商店时过滤数据。
答案 1 :(得分:0)
例如;
也许你申请这个;
但是对象的比较属性必须是“数字”列。您的Group-Number类可以覆盖等于在Number列上比较的方法
Set<StringFieldModel> set = new HashSet<StringFieldModel>();
set.addAll(store.getModels());
StringFieldModel[] modelArray=new StringFieldModel[set.toArray().length];
store.removeAll();
store.add(Arrays.asList(set.toArray(modelArray)));
如您所见,设置不包含重复值。