L
lexa
Gast
Hallo.
Ich muss eine Benutzeroberfläche für einen Getränkeautomat erstellen.
Mein Problem liegt bei der Bezahlung.
Wie schaffe ich, dass der eingegebene Bertrag im JTextField als zahl gespeichert ist (mit einem Integer, dass verstehe ich, aber an welcher Stelle im Programm?)
und wie passiert es, dass dann je nach Betrag Sie müssen noch bezahlen, oder Sie bekommen rückgeld, oder passend erscheint?
Hier mein Programm:
und noch eine Startklasse.
Wäre sehr nett, wenn mir jemand helfen könnte.
Danke im Voraus,
Lexa
Dieser Beitrag wurde von L-ectron-X am 20.05.2007 um 12:46 Uhr editiert.
Code-Tags eingefügt.
Ich muss eine Benutzeroberfläche für einen Getränkeautomat erstellen.
Mein Problem liegt bei der Bezahlung.
Wie schaffe ich, dass der eingegebene Bertrag im JTextField als zahl gespeichert ist (mit einem Integer, dass verstehe ich, aber an welcher Stelle im Programm?)
und wie passiert es, dass dann je nach Betrag Sie müssen noch bezahlen, oder Sie bekommen rückgeld, oder passend erscheint?
Hier mein Programm:
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class UI extends JFrame
{
// Anfang Variablen
double euro;
String s;
JTextField eingabe = new JTextField();
JButton aktion1 = new JButton("Fanta");
JButton aktion2 = new JButton("Cola");
JButton aktion3 = new JButton("Sprite");
JButton aktion4 = new JButton("Wasser");
JLabel ausgabe = new JLabel("Bitte Münzen einwerfen!");
// Ende Variablen
public UI(Ctrl c)
{
// Frame-Initialisierung
super("Getraenkeautomat");
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) { System.exit(0); }
});
int frameWidth = 800;
int frameHeight = 800;
setSize(frameWidth, frameHeight);
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
int x = (d.width - getSize().width) / 80;
int y = (d.height - getSize().height) /80 ;
setLocation(x, y);
Container cp = getContentPane();
cp.setLayout(new GridLayout(10,2));
// Anfang Komponenten
aktion1.addActionListener( c );
aktion1.setActionCommand("Fanta");
aktion2.addActionListener( c );
aktion2.setActionCommand("Das Getränk kostet 2,50");
aktion3.addActionListener( c );
aktion3.setActionCommand("Das Getränk kostet 2,50");
aktion4.addActionListener( c );
aktion4.setActionCommand("Das Getränk kostet 2,50");
eingabe.addActionListener (c);
eingabe.setActionCommand("eingabe");
cp.add(aktion1);
cp.add(aktion2);
cp.add(aktion3);
cp.add(aktion4);
cp.add(eingabe);
cp.add(ausgabe);
//cp.add(ausgabe);
// Ende Komponenten
setResizable(false);
setVisible(true);
}
public String getEingabe()
{
return eingabe.getText();
}
public void Eingabe()
{
s=eingabe.getText();
euro=Double.valueOf(s).doubleValue();
if (euro<2.50)
{
double sf= 2.50 -euro;
// System.out.println("Bitte "+sf+"einwerfen");
}
else if (euro>2.50)
{
double t=euro-2.50;
// System.out.println("Danke für Ihren Einwurf! Bitte entnehmen Sie Ihr Getränk!");
// System.out.println("Sie kriegen noch "+t+"Rückgeld");
}
}
public void setAnzeige( String text )
{
eingabe.setText( text );
import java.awt.event.*;
public class Ctrl implements ActionListener
{
private UI fenster;
public Ctrl()
{
fenster = new UI( this );
}
public void actionPerformed(ActionEvent e)
{
if ( e.getActionCommand().equals("Fanta") )
{
fenster.setAnzeige("Das Getränk kostet 2,50");
}
else if ( e.getActionCommand().equals("Cola") )
{
fenster.setAnzeige("Das Getränk kostet 2,50");
}
else if ( e.getActionCommand().equals("Wasser") )
{
fenster.setAnzeige("Das Getränk kostet 2,50");
}
else if ( e.getActionCommand().equals("Sprite") )
{
fenster.setAnzeige("Das Getränk kostet 2,50");
}
else if ( e.getActionCommand().equals("eingabe") )
{
fenster.setAnzeige("Danke für Ihren Einwurf! Bitte entnehmen Sie Ihr Getränk!");
}
else if ( e.getActionCommand().equals("Münze") )
{
fenster.setAnzeige(" Bitte Münzen einwerfen : "+fenster.getEingabe());
}
}
}
Wäre sehr nett, wenn mir jemand helfen könnte.
Danke im Voraus,
Lexa
Dieser Beitrag wurde von L-ectron-X am 20.05.2007 um 12:46 Uhr editiert.
Code-Tags eingefügt.