import javax.swing.*;
import javax.swing.text.BadLocationException;
import java.awt.*;
import java.awt.event.*;
public class TaschenRechner extends JPanel {
[INDENT]JFrame frame = new JFrame("TaschenRechner");
JLabel label_op1 = new JLabel("Operand");
JLabel label_operator = new JLabel("Operator");
JLabel label_op2 = new JLabel("Operand");
JButton enter = new JButton("Enter");
JTextField tf_op1 = new JTextField();
JTextField tf_op2 = new JTextField();
JLabel label_ergebnis = new JLabel("Ergebnis:");
JTextField tf_operator = new JTextField();
JTextField tf_ergebnis = new JTextField();
public TaschenRechner() {
[INDENT]this.init();[/INDENT]
}
public void init(){
[INDENT]frame.getContentPane().setLayout(new GridLayout(3,3));
frame.setSize(200, 75);
frame.getContentPane().add(label_op1);
frame.getContentPane().add(label_operator);
frame.getContentPane().add(label_op2);
frame.getContentPane().add(tf_op1);
frame.getContentPane().add(tf_operator);
frame.getContentPane().add(tf_op2);
frame.getContentPane().add(label_ergebnis);
frame.getContentPane().add(tf_ergebnis);
frame.getContentPane().add(enter);
frame.setVisible(true);
enter.addActionListener(new MyActionListener(this));
[/INDENT]
}
public void rechne(){[INDENT]int x = Integer.parseInt(tf_op1.getText());
int y = Integer.parseInt(tf_op2.getText());
String ergebnis = null;
String operator = null;
try {
[INDENT]operator = tf_operator.getText(0,1);[/INDENT]
} catch (BadLocationException e) {
[INDENT]e.printStackTrace();[/INDENT]
}
if (operator.equals("+")){
[INDENT]int erg = x + y;
ergebnis = "" + erg; //Konvertiere int in String[/INDENT]
} else {
[INDENT]if (operator.equals("-")){
[INDENT]int erg = x - y;
ergebnis = "" + erg; //Konvertiere int in String[/INDENT]
} else {
[INDENT]ergebnis = "Fehler";[/INDENT]
}[/INDENT]
}
tf_ergebnis.setText(ergebnis);[/INDENT]
}
public static void main(String[] args) {
[INDENT]TaschenRechner taschenrechner = new TaschenRechner();
taschenrechner.frame.setVisible(true);[/INDENT]
}
/**
* Dies ist mein eigener Action Listener, dem ich eine Referenz auf mein Objekt TaschenRechner
* übergeben habe, damit er mit den dortigen Funktionen arbeiten kann.
*/
public class MyActionListener implements ActionListener{
[INDENT]TaschenRechner taschenrechner;
public MyActionListener(TaschenRechner tr){
[INDENT]this.taschenrechner = tr;[/INDENT]
}
public void actionPerformed(ActionEvent arg0) {
[INDENT]taschenrechner.rechne();[/INDENT]
}[/INDENT]
}[/INDENT]}