Guten morgen,
lernen gerade in der Schule Java,
und sollen einen Währungsrechner machen.
Dabei habe ich aber 2 Probleme,
das erste wie kann ich beim Borderlayout 2 Textfields in North packen ?
Und beim ausführen, und dann beim berechnen, oder da wo er eigentlich rechnen sollte bekomme ich nur Fehler ohne ende, leider weis ich nicht wieso ?
Danke für eure Hilfe!
Cyberbob
lernen gerade in der Schule Java,
und sollen einen Währungsrechner machen.
Dabei habe ich aber 2 Probleme,
das erste wie kann ich beim Borderlayout 2 Textfields in North packen ?
Und beim ausführen, und dann beim berechnen, oder da wo er eigentlich rechnen sollte bekomme ich nur Fehler ohne ende, leider weis ich nicht wieso ?
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.text.*;
public class Rechner extends JPanel implements ActionListener
{
private JButton b1;
private JComboBox auswahlvor;
private JComboBox auswahlnach;
private JTextField eingabe;
private JTextField ausgabe;
public Rechner()
{
setLayout(new BorderLayout());
add(new JLabel(" >-->-->--> "), BorderLayout.CENTER);
JTextField eingabe = new JTextField();
add(eingabe, BorderLayout.NORTH);
JTextField ausgabe = new JTextField();
add(ausgabe, BorderLayout.NORTH);
String[] items = {"Euro","Dollar"};
JComboBox auswahlvor = new JComboBox(items);
JComboBox auswahlnach = new JComboBox(items);
auswahlvor.setSelectedIndex(0);
auswahlnach.setSelectedIndex(0);
add(auswahlvor, BorderLayout.WEST);
add(auswahlnach, BorderLayout.EAST);
JButton b1 = new JButton("Umrechnen");
b1.addActionListener(this);
add(b1, BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e)
{
double betrag, ergebnis;
Double fc; // Deklaration der Hüllklassenvariable
String str; // Deklaration einer Stringvariable
str = eingabe.getText(); // Auslesen des Textfeldes
fc = new Double(str); // Wert wird Hüllklasse übergeben
betrag = fc.floatValue(); // Wert(string) wird in Float gewandelt
DecimalFormat f = new DecimalFormat ("###,##0.00"); //Ausgabeformat
if(auswahlvor.getSelectedIndex()==0 & auswahlnach.getSelectedIndex()==1)
{
ergebnis = betrag / (double) 2;
ausgabe.setText((new Double(ergebnis)).toString());
}
if(auswahlvor.getSelectedIndex()==1 & auswahlnach.getSelectedIndex()==0)
{
ergebnis = betrag * (double) 2;
ausgabe.setText((new Double(ergebnis)).toString());
}
if(auswahlvor.getSelectedIndex()==1 & auswahlnach.getSelectedIndex()==1)
{
ausgabe.setText("Das geht nicht");
}
if(auswahlvor.getSelectedIndex()==0 & auswahlnach.getSelectedIndex()==0)
{
ausgabe.setText("Das geht nicht");
}
}
public static void main(String[] args)
{
JFrame frame = new JFrame("Währungsrechner");
frame.getContentPane().add(new Rechner());
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200, 120);
frame.setVisible(true);
}
}
Danke für eure Hilfe!
Cyberbob