gwt suggestionBox如何在其中获取文本、值对

gwt suggestionBox如何在其中获取文本、值对,gwt,combobox,widget,autosuggest,Gwt,Combobox,Widget,Autosuggest,我需要一个自动提示组合框来显示不明确的字符串列表。但是每个字符串都有一个唯一的id。需要这个id才能知道用户选择了什么(将id发送回服务器并对其进行处理) 如何使用gwt的自动建议组合框“suggestionBox”实现这一点。有没有办法将id->name对列表(如listBox.addItem(String name,String value))放入suggestionBox? 可能是通过覆盖suggestionOracle?(如何获取所选名称的所选id?) 或者这个用例最好由另一个gwt小部

我需要一个自动提示组合框来显示不明确的字符串列表。但是每个字符串都有一个唯一的id。需要这个id才能知道用户选择了什么(将id发送回服务器并对其进行处理)

如何使用gwt的自动建议组合框“suggestionBox”实现这一点。有没有办法将id->name对列表(如listBox.addItem(String name,String value))放入suggestionBox? 可能是通过覆盖suggestionOracle?(如何获取所选名称的所选id?)

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


thx预先

是的,您希望将SuggestionRacle子类化。您还希望将Suggestion子类化为可以保存所需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()

是的,您想将SuggestionRacle子类化。您还希望将Suggestion子类化为可以保存所需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()

谢谢!与此同时,我发现这很有帮助。但是你建议Riley的方法更适合。thx!与此同时,我发现这很有帮助。但你建议的Riley方法更适合。