Это не должно причинять мне столько боли, но это так. Это очень странная проблема. В приложении GWT у меня есть два файла .java, login.java и application.java. В login.java, я создаю страницу входа пользователя, где, если имя пользователя и пароль проверены, пользователь регистрируется в приложении, а приложение application.java занимает здесь.
Теперь в приложении. java onModuleLoad(), вот как я начинаю с страницы входа.
public void onModuleLoad() {
Login login = new Login();
login.textBoxUsername.setFocus(true);
RootLayoutPanel.get().add(login);}
Это отлично работает, за исключением крошечной проблемы неспособности установить фокус на имя пользователя TextBox при загрузке страницы. Я пробовал все, что мог придумать. Но фокус просто не устанавливается в TextBox. Если кто-нибудь может предложить решение, сделайте это. Ваша помощь с благодарностью.
Решение: (В случае, если кто-то сталкивается с той же проблемой)
final Login login = new Login();
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
public void execute () {
login.textBoxUsername.setFocus(true);
}
});
RootLayoutPanel.get().add(login);