Textfeld zurücksetzen

Mr.Nobody

Neues Mitglied
Ich habe vor kurzem angefangen Java mit Intellij zu programmieren. Mein aktuelles Projekt: Ein kleines Rate spiel.
Hier mal der Code:



import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Scanner;
import java.util.concurrent.ThreadLocalRandom;
public class Main {
static Integer Versuche= 1;
static Integer myNumber = ThreadLocalRandom.current().nextInt(0,100 +1);
static JLabel text = new JLabel("Gebe eine Zahl zwischen 0 und 100 ein");
static JLabel text2 = new JLabel(" ");

public static void main(String[] args) {

Integer myNumber = ThreadLocalRandom.current().nextInt(0,100 +1);
openUI();
//nextNumber();
}

public static void openUI(){
JFrame frame = new JFrame("rate die Zahl!");
frame.setSize(400, 300);
frame.setLocation(700,150);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setDefaultLookAndFeelDecorated(true);

text.setBounds(50,50,220,30);
text2.setBounds(50,70,200,30);

JTextField textFeld = new JTextField();
textFeld.setBounds(50,100,200,30);

JButton Button = new JButton("Raten!");
Button.setBounds(50,150,200,30);

Button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String textFromTextfield = textFeld.getText();
Integer number = Integer.parseInt(textFromTextfield);
guess(number);
}
});

JButton reset = new JButton("reset");
reset.setBounds(290,0,100,30);


reset.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Versuche = 1;
myNumber = ThreadLocalRandom.current().nextInt(0,100 +1);
text.setText("Gebe eine Zahl zwischen 0 und 100 ein");
text2.setText("");

}
});

frame.add(reset);
frame.add(text2);
frame.add(text);
frame.add(textFeld);
frame.add(Button);
frame.setLayout(null);
frame.setVisible(true);
}

public static void nextNumber(){
Versuche++;
Scanner scanner =new Scanner(System.in);
System.out.println("Bitte gebe eine Zahl ein.");
Integer number = scanner.nextInt();
guess(number);
}


public static void guess(Integer number){
if (number == myNumber){
System.out.println("Richtig geraten!!!");
text.setText("Richtig geraten!!!");
System.out.println("Du hast " + Versuche+" Versuche gebraucht!");
text2.setText("Du hast " + Versuche+" Versuche gebraucht!");


}
else {
System.out.println("falsch!(Versuch: "+Versuche+ ".");
text.setText("falsch!(Versuch: "+Versuche+ ".");
Versuche++;

if (myNumber > number){
System.out.println("Tipp: Versuch eine groessere Zahl");
text2.setText("Tipp: Versuch eine groessere Zahl");
}
else {
text2.setText("Tipp: versuch eine kleinere Zahl");
System.out.println("Tipp: versuch eine kleinere Zahl");}
//nextNumber();
}
}
}



Jetzt möchte ich in der Method "reset" und wenn etwas falsch ist(method: guess) das Textfeld zurücksetzen weiß aber nicht wie das geht und ich konnte auch kein Informationen darüber herausfinden. Könnte mir vielleicht jemand helfen?
Vielen Dank im Voraus
 
So was wie "zurücksetzen" gibt's nur in sehr wenigen Fällen. Im Normalfall musst du den Wert setzen, den du haben willst ... und Code in Codetags posten 🙂
 

Neue Themen


Zurück
Oben