public class InfoTextArea extends JTextArea implements Runnable { private String text; private boolean running=true; public InfoTextArea(String str) { text=str; } public void stop() { running=false; } public void run() { int textLength = text.toCharArray().length(); int i=0; while(i<textLength && running){ setText(getText() + text.charAt(i)); i++; try { Thread.sleep(500); } catch (InterruptedException e) {} } } }