1
当我执行完成时,我正在重定向其他某个网页。我想向我的用户显示我们正在“重定向到%d秒”的消息,因为我使用了Timer类,但它仍然会立即重定向。定时器在GWT中不工作,
代码如下。
public void redirect(){
hanldeWait() ;
Window.Location.assign(Url) ;
}
private void hanldeWait(){
Timer timer = new Timer() {
int i = 5 ;
public void run() {
if(i < 0){
errorMessage.setVisible(false);
cancel() ;
}else{
i-- ;
String redirectionMessage = "Redirecting in %d seconds" ;
String displayMessage = redirectionMessage ;
displayMessage = format(redirectionMessage, (Integer)i) ;
errorMessage.setText(displayMessage);
errorMessage.setVisible(true);
}
}
};
timer.scheduleRepeating(5000) ;
}
如果我在这里做错了什么。
'scheduleRepeating(5000)'应该是'schedule(5000)',如果你只希望它运行一次。 –
不,我想重复,直到我达到0. – abhishekgarg
但你已经告诉它通过this.schedule(1000)'重新运行。该行取消'scheduleRepeating(5000)'。 –