在listgird文本框中光标位置到字符串的结尾?

时间:2013-12-10 13:54:42

标签: gwt smartgwt

  

有没有办法,我可以将光标位置设置为listgird文本框中字符串的结尾。   示例:   输入网站名称,一旦用户点击listgird的单元格,它将显示'http://'现在我希望我的光标位置到字符串的结尾。>

1 个答案:

答案 0 :(得分:1)

很容易:

    TextBox yourBox = new TextBox();
    root.add(yourBox);
    yourBox.setValue("AMSTERDAM");
    yourBox.setFocus(true);
    yourBox.setCursorPos(yourBox.getValue().length());

有时候在渲染完整组件时你会失去焦点。如果发生这种情况,您可以尝试将setFocus放入scheduleDeferred-Command中,这意味着,在完成浏览器的呈现过程后,将执行execute()中的代码。所以你可以肯定,没有其他组件也会成为焦点,你的组件会再次失去它。

    final TextBox yourBox = new TextBox();
    root.add(yourBox);
    yourBox.setValue("AMSTERDAM");
    Scheduler.get().scheduleDeferred(new ScheduledCommand()
    {
        @Override
        public void execute()
        {
            yourBox.setFocus(true);
            yourBox.setCursorPos(yourBox.getValue().length());
        }
    });