我想创建一个动态组合框,即它从数据库中获取数据
在按下某些按钮(在其他面板上)时,我想重新加载 ComboBox。
ComboBox Store Datatype : List 我创建了一个获取 List 的 RPC 调用(RPCProxy)
但是,我无法创建一个 Loader 将其映射到我的 ComboBox Store,因为 Loader 仅映射到扩展 BeanModel 实例的 Store。所以我在加载时只能获取一次数据,但我不能重新获取数据,因为我不能使用加载器。
这是代码的一部分:
SimpleComboBox myCombo = new SimpleComboBox(); List myStore = new ArrayList();
XX.getService().getMyDD(userData.getId(), weekOffset, new AsyncCallback<List<String>>() {
public void onFailure(
Throwable caught) {
MessageBox.alert(UIConstants.ERROR,caught.getMessage(),
null);
}
public void onSuccess(List<String> result) {
for(String str: result)
{
myStore.add(str);
}
myCombo.removeAll();
myCombo.add(myStore);
myCombo.setSimpleValue(UIConstants.ALL);
}
});
RpcProxy<List<String>> userTypeProxy = new RpcProxy<List<String>>() {
@Override
protected void load(Object loadConfig,
AsyncCallback<List<String>> callback) {
try {
System.out.println("In Loader: my: "+my);
XX.getService().getMyDD(userData.getId(), weekOffset,
callback);
} catch (Exception e) {
MessageBox.alert(UIConstants.ERROR,
UIConstants.ERROR_USER_RETRIEVED, null);
}
}
};
请让我知道我是否可以为我的 ComboBox 实现任何类型的加载器,例如 ListLoader 等。我非常感谢您提前提供的帮助。