Это не должно причинять мне столько боли, но это так. Это очень странная проблема. В приложении 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. Если кто-то может предложить решение, пожалуйста. Мы очень благодарны за вашу помощь.
Решение : (В случае, если это поможет любому, кто сталкивается с той же проблемой)
final Login login = new Login();
Scheduler.get().scheduleDeferred(new ScheduledCommand() {
public void execute () {
login.textBoxUsername.setFocus(true);
}
});
RootLayoutPanel.get().add(login);