JButton button = new JButton("Clear");
button.addActionListener(this);
textField = new JTextField(20);
textField.addActionListener(new MyTextActionListener());
textField.getDocument().addDocumentListener(new MyDocumentListener());
textField.getDocument().putProperty("name", "Text Field");
textArea = new JTextArea();
textArea.getDocument().addDocumentListener(new MyDocumentListener());
textArea.getDocument().putProperty("name", "Text Area");
JScrollPane scrollPane = new JScrollPane(textArea);
scrollPane.setPreferredSize(new Dimension(200, 75));
displayArea = new JTextArea();
displayArea.setEditable(false);
JScrollPane displayScrollPane = new JScrollPane(displayArea);
displayScrollPane.setPreferredSize(new Dimension(200, 75));
JPanel contentPane = new JPanel();
GridBagLayout gridbag = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
contentPane.setLayout(gridbag);
c.gridx = 0;
c.gridy = 0;
c.weightx = 1.0;
c.fill = GridBagConstraints.HORIZONTAL;
gridbag.setConstraints(textField, c);
contentPane.add(textField);
c.gridx = 0;
c.gridy = 1;
c.weightx = 0.0;
c.gridheight = 2;
c.fill = GridBagConstraints.BOTH;
gridbag.setConstraints(scrollPane, c);
contentPane.add(scrollPane);
c.gridx = 1;
c.gridy = 0;
c.weightx = 1.0;
c.weighty = 1.0;
gridbag.setConstraints(displayScrollPane, c);
contentPane.add(displayScrollPane);
c.gridx = 1;
c.gridy = 2;
c.weightx = 0.0;
c.gridheight = 1;
c.weighty = 0.0;
c.fill = GridBagConstraints.HORIZONTAL;
gridbag.setConstraints(button, c);
contentPane.add(button);
setContentPane(contentPane);