你应该用的是swing做的吧~
加一个JScrollPane就可以了。 JTextArea taWords=new JTextArea();
 JScrollPane taScroll=new JScrollPane(taWords);
 jframe.getContentPane().add(taScroll,*); 

解决方案 »

  1.   

    用jtext.setCaretPosition(jtext.getText().length());
    每次append()以后就调用一次这句,就行了
      

  2.   

    用kofsky(御风而动)的方法就还有一种实现
    import java.awt.*;
    import javax.swing.*;public class Test2 extends JFrame
    {
        JTextArea messageConsole;
        JScrollPane messageScrollPane;
        JScrollBar messageScrollBar;
        
        Container con;
        
        public Test2()
        {
         messageConsole = new JTextArea();
         messageScrollPane = new JScrollPane( messageConsole );
         messageScrollBar = messageScrollPane.getVerticalScrollBar();
        
         con = this.getContentPane();
         con.add(messageScrollPane);
         setSize(400,400);
    setVisible(true);
        
         for(int i=0;i<100;i++)
         {
         messageConsole.append("......"+"\n");
         messageScrollBar.setValue(messageScrollBar.getMaximum());
         }
        }

    public static void main(String[] args)
    {
    Test2 test = new Test2();

    }
    }