import javax.swing.JFrame; import javax.swing.JTextArea; import javax.swing.JScrollPane; import java.awt.Font; /* Author: James Tam Version: 2015 Learning objective: 1) Reacting to a JTextArea events 2) Adding scrolling capability to a Java component (JTextArea). */ public class Driver { public static void main(String [] args) { JFrame frame = new JFrame(); frame.setSize(400,250); JTextArea text = new JTextArea(); JScrollPane scrollPane = new JScrollPane(text); text.setFont(new Font("Times",Font.BOLD, 32)); for (int i = 0;i < 10; i++) text.append("foo" + i + "\n"); frame.add(scrollPane); MyDocumentListener listener = new MyDocumentListener(); (text.getDocument()).addDocumentListener(listener); frame.setVisible(true); frame.setLayout(null); frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); } }