在GWT TextArea中使用selectAll()

时间:2011-08-01 10:03:54

标签: gwt textarea selectall

我的GWT页面有一个TextArea,我希望它具有焦点,并在加载此页面时选择所有文本。我尝试下面的代码,但它根本不起作用。你能帮助我吗?感谢

final TextArea myText = new TextArea();
myText.setCharacterWidth(50);
myText.setVisibleLines(20);
myText.setText("Just try something");
RootPanel.get("textContainer").add(myText);
myText.setVisible(true);
myText.setFocus(true);
myText.selectAll();

1 个答案:

答案 0 :(得分:5)

TextBox.selectAll()的文档说:

This will only work when the widget is attached to the document and not hidden.

当您致电TextBox时,您的.selectAll()很可能尚未附加到DOM。

尝试使用Scheduler

final TextArea myText = new TextArea();
myText.setCharacterWidth(50);
myText.setVisibleLines(20);
myText.setText("Just try something");
RootPanel.get("textContainer").add(myText);
Scheduler.get().scheduleDeferred(new Scheduler.ScheduledCommand() {
        @Override
        public void execute() {
            // your commands here
            myText.setVisible(true);
            myText.setFocus(true);
            myText.selectAll();
        }
});