需要在Java中使用GWT创建一个Combobox。这个组合框必须具有typeahead功能,并且还必须使用“contains”而不是“startswith”作为建议。知道如何实现这个吗?我应该覆盖一些东西吗? 提前致谢
---编辑添加了我的代码的一些部分 首先,我宣布组合框和商店
private ComboBox docTypeField;
private Store store;
然后我以这种方式初始化组合框
docTypeField = new ComboBox();
docTypeField.setFieldLabel("Doc Types:");
docTypeField.setDisplayField(DocTypePicker.STORE_FIELD_NAME);
docTypeField.setMode(ComboBox.LOCAL);
docTypeField.setStore(store);
docTypeField.setTypeAhead(true);
我试图通过商店中的方法修改过滤器,但它没有按预期工作
store.filterBy(new StoreTraversalCallback() {
public boolean execute(Record record) {
//if user text matches the name or alias then its true
if (sugestDocttype.getValue() == null
|| sugestDocttype.getValue().length() == 0
|| (record.getAsString(DocTypePicker.STORE_FIELD_NAME) != null && record.getAsString(
DocTypePicker.STORE_FIELD_NAME).toUpperCase().contains(
sugestDocttype.getValue().toUpperCase()))
){
return true;
}
return false;
}
});
答案 0 :(得分:0)