thomasjung1
Grünschnabel
Hallo,
ich habe die Aufgabe einen Taschenrechner zu programmieren.
Die Oberfläche habe ich hingekriegt. Bin aber leider bei der Kalkulation der Zahlen hängen geblieben. Hier das, was ich bisher programmiert habe. Es wäre super nett, wenn mir jemand zeigen bzw. schreiben könnte, wo mein Fehler liegt
Danke im Vorraus.
}
ich habe die Aufgabe einen Taschenrechner zu programmieren.
Die Oberfläche habe ich hingekriegt. Bin aber leider bei der Kalkulation der Zahlen hängen geblieben. Hier das, was ich bisher programmiert habe. Es wäre super nett, wenn mir jemand zeigen bzw. schreiben könnte, wo mein Fehler liegt

Danke im Vorraus.
Java:
/** @author Thomas Jung
* @date 19.08.2009
* @description
*/
package de.ifw.swe;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Taschenrechner {
private JPanel buttonPanel;
private JTextField display;
public static void main(String[] args) {
new Taschenrechner();
}
public Taschenrechner(){
initGUI();
}
private void initGUI() {
JPanel displayPanel = new JPanel();
JFrame frame = new JFrame("Taschenrechner");
displayPanel.setLayout(new BorderLayout());
display = new JTextField();
display.setHorizontalAlignment(JTextField.RIGHT);
displayPanel.add(display, BorderLayout.NORTH);
buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout(4,4));
addButton("7", new InsertAction());
addButton("8", new InsertAction());
addButton("9", new InsertAction());
addButton("/", new CommandAction());
addButton("4", new InsertAction());
addButton("5", new InsertAction());
addButton("6", new InsertAction());
addButton("*", new CommandAction());
addButton("1", new InsertAction());
addButton("2", new InsertAction());
addButton("3", new InsertAction());
addButton("-", new CommandAction());
addButton("0", new InsertAction());
addButton(".", new InsertAction());
addButton("=", new CommandAction());
addButton("+", new CommandAction());
displayPanel.add(buttonPanel);
frame.add(displayPanel);
frame.setVisible(true);
frame.addWindowListener(new WindowClosingAdapter());
frame.pack();
}
private void addButton(String _name , ActionListener _actionListener){
JButton jButton = new JButton(_name);
jButton.addActionListener(_actionListener);
buttonPanel.add(jButton);
}
class InsertAction implements ActionListener{
public void actionPerformed(ActionEvent _event) {
String input = _event.getActionCommand();
display.setText(display.getText()+ input);
}
}
class CommandAction implements ActionListener{
public void actionPerformed(ActionEvent _event) {
calculate(_event.getActionCommand());
}
private void calculate( String _command) {
if(_command.equals("+")){
String tmp = display.getText() +_command;
System.out.println(tmp + "--> erste eingegebene Zahl");
//System.out.println(_command+ " --> gedrückter Operator");
display.setText(null);
double wert1 = Double.parseDouble(tmp);
String tmp2 = display.getText();
System.out.println(tmp2);
double wert2 = Double.parseDouble(tmp2);
double ergebnis = wert1 + wert2;
//double wert = Double.parseDouble(ergebnis);
System.out.println(ergebnis);
}
}
}
Zuletzt bearbeitet von einem Moderator: