Hi ich benötige Hilfe beim Übergeben vom JTextfield oder beim Auslesen der Zahl aus dem JTextField.
Mein Plan war es das eingabe JTextField bis zur Uhr class zu übergeben und dort dann die Zahl aus dem JTextField
auszulesen und in eine int Zahl umzuwandeln. Irgendwie funktioniert dies aber nicht.
Mein Plan war es das eingabe JTextField bis zur Uhr class zu übergeben und dort dann die Zahl aus dem JTextField
auszulesen und in eine int Zahl umzuwandeln. Irgendwie funktioniert dies aber nicht.
Code:
public class Aufg01 extends JFrame{
public static void main (String[] args){
new Aufg01();
}
public Aufg01(){
this.setTitle("Küchenuhr");
this.getContentPane().add(new Aufg01HP());
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.pack();
this.setResizable(false);
this.setVisible(true);
}
}
class Aufg01HP extends JPanel{
public Aufg01HP(){
JTextField eingabe = new JTextField(4);
eingabe.setText("0");
JLabel ausgabe = new JLabel();
StartStop startStop = new StartStop(eingabe, ausgabe);
this.add(new JLabel("Zeit(Sekunden):"));
this.add(eingabe);
this.add(startStop);
this.add(ausgabe);
}
}
class StartStop extends JButton implements ActionListener{
private JTextField eingabeSS;
private JLabel ausgabeSS;
private Uhr uhr;
private int i;
public StartStop(JTextField eingabeSave, JLabel ausgabeSave){
super("Start");
eingabeSS = eingabeSave;
ausgabeSS = ausgabeSave;
this.addActionListener(this);
uhr = new Uhr(eingabeSS,ausgabeSS);
}
public void actionPerformed (ActionEvent e){
if(uhr.isRunning()){
uhr.pause();
this.setText("Start");
}
else{
uhr.start();
this.setText("Pause");
}
}
}
class Uhr extends Timer implements ActionListener{
private JTextField eingabe;
private JLabel ausgabe;
private int i;
public Uhr(JTextField eingabeSave, JLabel ausgabeSave){
super(1000,null);
this.addActionListener(this);
eingabe = eingabeSave;
i = Integer.parseInt(eingabe.getText());
ausgabe = ausgabeSave;
ausgabe.setText("Bitte geben sie die Zeit ein!");
}
public void actionPerformed (ActionEvent e){
System.out.println(i);
i--;
ausgabe.setText(""+(i)+"sek");
}
public void start(){
super.start();
}
public void pause(){
super.stop();
}
}