import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class TimerExample extends JFrame
    implements ActionListener {

    private JTextField secsField, minsField;
    private JLabel secsLabel, minsLabel;
    private int ticks = 0;
    private Timer timer;
    private JButton button;
    private JButton start;

    public static void main (String[] args) {
        TimerExample frame = new TimerExample();
        frame.setSize(300,100);
        frame.createGUI();
        frame.show();
    }

    private void createGUI() {
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        Container window = getContentPane();
        window.setLayout(new FlowLayout() );

        minsLabel = new JLabel("Mins:  ");
        window.add(minsLabel);

        minsField = new JTextField(2);
        window.add(minsField);

        secsLabel = new JLabel("    Secs:   ");
        window.add(secsLabel);

        secsField = new JTextField(2);
        window.add(secsField);
        timer = new Timer(1000, this);
        timer.start();
        
        button = new JButton("stop");
        window.add(button);
        button.addActionListener(this);
        
         start = new JButton("start");
        window.add(start);
        start.addActionListener(this);
    }

    public void actionPerformed(ActionEvent event) {
        
        Object bronDerGebeurtenis = new Object();
        bronDerGebeurtenis = event.getSource();
       
        
        
        if (bronDerGebeurtenis == timer) {
        	
        	ticks = ticks + 1;
        	
        		minsField.setText(Integer.toString(ticks / 60));
        secsField.setText(Integer.toString(ticks % 60));
        	
        }
        
        if (bronDerGebeurtenis == button) {
        	
        	timer.stop();
        
        }
        
        
          if (bronDerGebeurtenis == start) {
        	
        	timer.start();
        
        }
        
        
    }

}

