Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.SwingWorker;

public class Main extends JFrame {

    public Main() {
        this.setLayout(new FlowLayout());
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JButton processButton = new JButton("Start");
        JButton helloButton = new JButton("Hello");

        processButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent event) {
                MyTask process = new MyTask();
                try {
                    process.execute();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });

        helloButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                JOptionPane.showMessageDialog(null, "Hello There");
            }
        });
        this.getContentPane().add(processButton);
        this.getContentPane().add(helloButton);

        this.pack();
        setVisible(true);
    }

    public static void main(String[] args) {
        new Main();
    }

}

class MyTask extends SwingWorker {
    protected Object doInBackground() throws Exception {
        Integer result = new Integer(0);
        for (int i = 0; i < 10; i++) {
            result += i * 10;
            try {
                Thread.sleep(5000);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return result;
    }
}