在帮助加快用户工作流程的过程中,我想将焦点设置为TextBox。我从简单地将行添加queryBox.setFocus(true);
到视图方法开始。然而,这并没有奏效。有效的是推迟通话:
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
@Override
public void execute() {
queryBox.setFocus(true);
}
});
为什么它起作用了,与我的第一次尝试相比?
更新
从下面 Baadshah 提供的参考资料来看,这似乎是一个现有的 GWT 问题,根据该问题,“基本上,除非它大部分时间都包含在 DeferredCommand 中,否则 setFocus() 将不起作用。”