GWT - 按下回车后从文本框中获取文本不起作用

时间:2017-02-03 15:30:36

标签: java gwt

在我的代码中,我为文本的某些单词创建了文本框 这是一段代码

for (String word : text){
            if(word.equals("space")){   
                textbox = new TextBox();
                textbox.addKeyDownHandler(new EnterKeyHandler());
                panel.add(textbox);
                ...
}}

工作正常,文本框出现在屏幕上。

然后我有这个代码来处理用户输入

 private class EnterKeyHandler implements KeyDownHandler {

        public void onKeyDown(KeyDownEvent event) { 
              if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { 
                  Window.alert("enter" + textbox.getText());
                 List.add(textbox.getText()); //adds the word to an array 
              }
        }
 }

我遇到的问题是,当用户插入内容并按回车键时,textbox.getText()没有文字。程序在这里停止。

1 个答案:

答案 0 :(得分:0)

因为我有很多文本框,所以我必须使用textbox = (TextBox) event.getSource();

所以它工作正常

 private class EnterKeyHandler implements KeyDownHandler {

    public void onKeyDown(KeyDownEvent event) { 
          if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { 
             textbox = (TextBox) event.getSource();
              Window.alert("enter" + textbox.getText());
             List.add(textbox.getText()); //adds the word to an array 
          }
    }

}