2011-04-14 59 views
0

我需要一个autosuggest组合框,用于模糊的字符串列表。但everey字符串具有唯一的ID。需要此id来知道用户选择了什么(将id发送回服务器并使用它进行操作)。gwt suggestionBox如何获取文本,值对

如何用gwt的auto-suggest-comboBox“suggestionBox”实现这个。有没有办法让id->名字对的列表(如listBox.addItem(String name,String value))到建议框? 可能是通过覆盖暗示ORACLE? (如何获得所选名称的选定ID?)

或者是这个用例最好是由另一个gwt小部件实现?

thx预先

回答

3

是的,你想子类SuggestionOracle。你也想将建议的子类化为可以容纳你需要的id的东西。

public class StringWithIdSuggestion implements Suggestion { 

    Long id; 
    String string; 

    @Override public String getDisplayString(){ 
     return string; 
    } 

    @Override public String getReplacementString() { 
     return string; 
    } 

    public Long getId() { 
     return id; 
    } 
} 

然后你的建议oracle会给StringWithIdSuggestion实例,你可以通过它来访问getId();

+1

thx!与此同时,我发现http://eggsylife.co.uk/2008/08/25/gwt-suggestbox-backed-by-dto-model/帮助很大。但你建议莱利的方法更适合。 – dermoritz 2011-04-14 12:03:52