import javax.swing.*; import java.awt.event.*; import java.awt.*; public class o2 extends JFrame{ JTextField input = new JTextField(25); String tmp, wTemp; int count=0; o2(){ super("Calculator"); setLayout(new BorderLayout()); add(input, BorderLayout.NORTH); input.setHorizontalAlignment(JTextField.RIGHT); JPanel numbs = new JPanel(new GridLayout(4,3)); add(numbs); for (int x=1;x<10;x++){ JButton tmpBut = new JButton(""+x); numbs.add(tmpBut); tmpBut.addActionListener(new NumButton()); } JButton clear = new JButton("*"); numbs.add(clear); clear.addActionListener(new ClearButton()); JButton zero = new JButton("0"); numbs.add(zero); zero.addActionListener(new NumButton()); JButton staket = new JButton("#"); numbs.add(staket); setSize(360,200); setVisible(true); } class NumButton implements ActionListener{ public void actionPerformed(ActionEvent ave){ String sTemp = ((JButton)ave.getSource()).getText(); if (count>0){ wTemp=tmp+sTemp; input.setText(wTemp); }else{ input.setText(sTemp); count++; wTemp=sTemp; } tmp=wTemp; } } class ClearButton implements ActionListener{ public void actionPerformed(ActionEvent ave){ input.setText(""); tmp=null; count=0; } } public static void main(String[]args){ new o2(); } }