package aufgabe7;
import java.awt.*;
class Fenster extends Frame implements ActionListener
{
protected TextField anzeige;
protected Button nul, eins, zwei, drei, vier;
protected Button fuenf, sechs, sieben, acht, neun;
protected Button plus, minus, mal, durch, komma, gleich;
protected Button beenden, loeschen;
public Fenster (String titel)
{
super (titel);
anzeige = new TextField ("0", 10);
nul = new Button ("0");
eins = new Button ("1");
zwei = new Button ("2");
drei = new Button ("3");
vier = new Button ("4");
fuenf = new Button ("5");
sechs = new Button ("6");
sieben = new Button ("7");
acht = new Button ("8");
neun = new Button ("9");
plus = new Button ("+");
minus = new Button ("-");
mal = new Button ("*");
durch = new Button ("/");
komma = new Button (",");
gleich = new Button ("=");
beenden = new Button ("Beenden");
loeschen= new Button ("Loeschen");
Panel p1 = new Panel ();
p1.setLayout (new GridLayout(4,4));
p1.add (sieben); p1.add (acht);
p1.add (neun); p1.add (plus);
p1.add (vier); p1.add (fuenf);
p1.add (sechs); p1.add (minus);
p1.add (eins); p1.add (zwei);
p1.add (drei); p1.add (mal);
p1.add (nul); p1.add (komma);
p1.add (gleich); p1.add (durch);
Panel p2 = new Panel ();
p2.setLayout(new BorderLayout());
p2.add ("North", anzeige);
this.setLayout (new BorderLayout());
Panel p3 = new Panel ();
p3.setLayout(new FlowLayout());
p3.add (loeschen); p3.add (beenden);
this.add ("Center", p1);
this.add ("North", p2);
this.add ("South", p3);
nul.addActionListener (this);
eins.addActionListener (this);
zwei.addActionListener (this);
drei.addActionListener (this);
vier.addActionListener (this);
fuenf.addActionListener (this);
sechs.addActionListener (this);
sieben.addActionListener (this);
acht.addActionListener (this);
neun.addActionListener (this);
plus.addActionListener (this);
minus.addActionListener (this);
mal.addActionListener (this);
durch.addActionListener (this);
komma.addActionListener (this);
gleich.addActionListener (this);
beenden.addActionListener (this);
loeschen.addActionListener (this);
anzeige.addFocusListener (new MyFocusListener());
this.addWindowListener (new MyWindowListener(true));
this.setBackground (Color.blue);
this.setSize (250,200);
this.setVisible (true);
}
public void actionPerformed (ActionEvent e)
{
if (e.getSource()==beenden)
{
System.exit(0);
}
if (e.getSource()==nul)
{
String text = anzeige.getText();
anzeige.setText(text + "0");
}
if (e.getSource()==eins)
{
String text = anzeige.getText();
anzeige.setText(text + "1");
}
if (e.getSource()==zwei)
{
String text = anzeige.getText();
anzeige.setText(text + "2");
}
if (e.getSource()==drei)
{
String text = anzeige.getText();
anzeige.setText(text + "3");
}
if (e.getSource()==vier)
{
String text = anzeige.getText();
anzeige.setText(text + "4");
}
if (e.getSource()==fuenf)
{
String text = anzeige.getText();
anzeige.setText(text + "5");
}
if (e.getSource()==sechs)
{
String text = anzeige.getText();
anzeige.setText(text + "6");
}
if (e.getSource()==sieben)
{
String text = anzeige.getText();
anzeige.setText(text + "7");
}
if (e.getSource()==acht)
{
String text = anzeige.getText();
anzeige.setText(text + "8");
}
if (e.getSource()==neun)
{
String text = anzeige.getText();
anzeige.setText(text + "9");
}
if (e.getSource()==komma)
{
String text = anzeige.getText();
anzeige.setText(text + ",");
}
if (e.getSource()==loeschen)
{
anzeige.setText("0");
durch.transferFocus();
}
if (e.getSource()==gleich)
{
double ergebnis, z1, z2;
double temp = (new Double(anzeige.getText())).doubleValue();
}
if (e.getSource()==plus)
{
}
if (e.getSource()==minus)
{
}
if (e.getSource()==mal)
{
}
if (e.getSource()==durch)
{
}
}
class MyFocusListener extends FocusAdapter
{
public void focusGained (FocusEvent e)
{
if (e.getSource()==anzeige)
{
anzeige.setText("");
durch.transferFocus();
}
}
}
}