我想显示一个表示加载的gif(一个旋转轮)。我的方法是:
public void load() {
loadIndicator.setVisible(true);
... the loading code ...
loadIndicator.setVisible(false);
}
但这不起作用。我想这是因为元素只在过程结束时重绘。在其他语言(C#)redraw
或类似的东西中是否有类似Application.Doevents
或类似物的东西?或者我使用了错误的方法
答案 0 :(得分:1)
从服务器加载内容的大多数代码都是异步执行的。这意味着所有load()方法都可以在“加载代码”完成之前运行 - 加载指示器可见,加载启动(但未完成),指示符再次消失。这是(部分)完成的,无需担心在允许更多用户交互之前等待服务器。
几乎所有GWT代码都不需要重绘方法。事件是让您的应用程序围绕异步流程设计的好主意。
了解编写异步代码的有用线程:http://groups.google.com/group/Google-Web-Toolkit/browse_thread/thread/faca1575f306ba0f/3be719c021aa19bd