Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

import java.awt.GridLayout;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.text.NumberFormat;

import javax.swing.JFormattedTextField;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Main extends JPanel {
    NumberFormat format = NumberFormat.getNumberInstance();
    JFormattedTextField a = new JFormattedTextField(format);
    JFormattedTextField b = new JFormattedTextField(format);
    JFormattedTextField sum = new JFormattedTextField(format);

    public Main() {
        this.setLayout(new GridLayout(0, 1));
        this.add(init(a));
        this.add(init(b));
        sum.setEditable(false);
        sum.setFocusable(false);
        this.add(sum);
    }

    private JFormattedTextField init(JFormattedTextField jtf) {
        jtf.setValue(0);
        jtf.addFocusListener(new FocusAdapter() {
            @Override
            public void focusLost(FocusEvent e) {
                Number v1 = (Number) a.getValue();
                Number v2 = (Number) b.getValue();
                sum.setValue(v1.longValue() + v2.longValue());
            }
        });
        return jtf;
    }

    public static void main(String[] args) {
        JFrame f = new JFrame();
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.add(new Main());
        f.pack();
        f.setVisible(true);
    }
}