Java tutorial
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); } }