import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class Main extends JFrame implements ActionListener {
JTextArea f = new JTextArea("A medium sized text");
public Main() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel all = new JPanel();
JButton button = new JButton("Expand");
button.addActionListener(this);
all.add(button);
all.add(f);
getContentPane().add(all);
}
@Override
public void actionPerformed(ActionEvent e) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
f.setText(f.getText() + "\n" + f.getText());
setSize(getPreferredSize());
}
});
}
public static void main(String[] args) {
Main lst = new Main();
lst.setVisible(true);
lst.pack();
}
}