import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class Summation2 extends JFrame {
    JTextField textField = new JTextField(10);
    JButton button = new JButton("Restart");
    JLabel result = new JLabel("Sum: 0");
    int sum = 0;
    public Summation2() {
	getContentPane().add(textField);
	getContentPane().add(button, BorderLayout.EAST);
	getContentPane().add(result, BorderLayout.SOUTH);
	textField.addActionListener(new TextListener());
	button.addActionListener(new ButtonListener());
    }
    
   public static void main(String[] args) {
        Summation2 f = new Summation2();
	f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	f.pack();
	f.setVisible(true);
    }
    
    class TextListener implements ActionListener {
	public void actionPerformed(ActionEvent e) {
	    // get the text
	    String text = textField.getText();
	    // change to integer format
	    int change = 0;
	    // try and catch 
	    try {
	       change = Integer.parseInt(text);
	    } catch (Exception ex) {
		// if it is not a number
		textField.setText("");
		return;
	    }
	    // add to the sum and display it
	    sum+=change;
	    result.setText("Sum: " + sum);
	    textField.setText("");
	}
    }
    
    class ButtonListener implements ActionListener {
	public void actionPerformed(ActionEvent e) {
	    textField.setText("");
	    sum = 0;
	    result.setText("Sum: " + sum);
	}
    }
}
	    
    
    
