晕,JTextArea 是组件,怎么能和屏幕输入相比呢?
屏幕是一个完整的窗口,当然可以直接处理 回车 了,没有其他的事件需要处理。但 JTextArea 就不同了,它不是一个完整的窗口,还有其他的组件,你不用事件机制, 那你按一下回车, JVM 怎么知道你要干什么呢???
在 JTextArea 中要处理里面的东西,只能使用事件机制。

解决方案 »

  1.   

    我写了这样一个方法,可以当输入"."的时候结束返回,能不能类似的用这种方式来实现输入回车的时候返回呢?如何获取回车的符号啊
      public String readLine() {
        String a;
        for(;;){
          try {Thread.sleep(200);}
          catch(InterruptedException e) {}
          a = jTextField2.getText();
          int l = a.indexOf(".");
          if(l != -1) {
            jTextField2.setText("");
            return a;
          }
        }
      }
      

  2.   

    原因是我要写这样一个函数:在Gui这个类中写一个方法read(),
    当按下会车的时候,便回从JTextField中获取输入的内容,并返回line,如果没有回车,该方法一直处于等待状态,不返回.并不是传统的事件模型那样,当回车按下的时候,调用read()这个方法.这个read()方法是被其他类中方法块中调用的.
      

  3.   

    当按下会车的时候,便回从JTextField中获取输入的内容,并返回line,如果没有回车,该方法一直处于等待状态,不返回.晕,使用多线程就可以了啊!你不使用事件模型,就是怕 read() 不返回,把整个GUI都卡住了.你可以在JTextField里开启另一个线程,在里另一个线程调用 read() 方法就可以了啊!
    具体你自己实现吧!