当数据尚未通过celltree离开时,如何显示加载图标。 为了获取每个假的数据,使用AsyncDataProvider,它发出网络请求。只要未返回,就应显示加载消息。有没有办法做到这一点?
此致 斯蒂芬
答案 0 :(得分:1)
解决了它。 当RowCount与可用的DataCount不匹配时,celltree具有显示加载状态的功能。因此,如果数据尚未存在,您只需发送告诉树的RowCount(1, true);
,它只有一个元素,但尚未存在。
这使树显示加载标志:
答案 1 :(得分:0)
以下是一个相当通用的解决方案,但我觉得非常有用。只要RPC调用正在进行,它就会显示一个“忙”鼠标指针。您可以根据自己的需求进行调整。我按如下方式定义了一个类:
class CallWrapper<T> implements AsyncCallback<T> {
AsyncCallback<T> callback;
public CallWrapper(AsyncCallback<T> cb) {
callback = cb;
DOM.setStyleAttribute(RootPanel.getBodyElement(), "cursor", "wait");
}
public void onFailure(Throwable caught) {
DOM.setStyleAttribute(RootPanel.getBodyElement(), "cursor", "default");
callback.onFailure(caught);
}
public void onSuccess(T result) {
DOM.setStyleAttribute(RootPanel.getBodyElement(), "cursor", "default");
callback.onSuccess(result);
}
}
然后你可以按如下方式包装每个AsyncCallback:
public void callService(AsyncCallback<String> callback) {
myRPC.doStuff(new CallWrapper<String>(callback));
}
希望这有帮助。