Bin absoluter Neuling in diesem Bereich.
Ich möchte einen 2 button hinzufügen, der das Programm Resetet. Den Zähler auf Null setzt und eine neue Zufalls Zahl generriet.
Angezeigt und in Possition ist der Button schon. nur wie bring ich Ihn dazu das Oben beschriebene umzusetzten?
Und ggf. das man den JButton1 mit der Enter Taste bestätigen kann und nicht nur via Mausklick.
Ich möchte einen 2 button hinzufügen, der das Programm Resetet. Den Zähler auf Null setzt und eine neue Zufalls Zahl generriet.
Java:
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.util.Scanner;
import java.util.concurrent.ThreadLocalRandom;
import javax.swing.*;
import java.awt.event.KeyEvent;
import static com.sun.java.accessibility.util.AWTEventMonitor.addKeyListener;
public class Main {
static Integer myNumber = ThreadLocalRandom.current().nextInt(0, 100 + 1);
static Integer tries = 0;
static JLabel text = new JLabel("Gebe eine Zahl zwischen 0 und 100 ein!");
public static void main(String[] args) {
openUI();
// nextRound();
}
public static void openUI(){
JFrame frame = new JFrame("Rate die Zahl!");
frame.setSize(400,400);
frame.setLocation(100,150);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setDefaultLookAndFeelDecorated(true);
text.setBounds(50,50,300,30);
JTextField textField = new JTextField();
textField.setBounds(50,100,200,30);
JButton button2 = new JButton("Neu Starten");
button2.setBounds(50,200,100,30);
JButton button1 = new JButton("Raten");
button1.setBounds(50,150,100,30);
button1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try {
String textFromTextfield = textField.getText();
Integer number = Integer.parseInt(textFromTextfield);
guess(number);
} catch (Exception error){
text.setText("Bitte gebe eine Zahl ein!");
}
}
});
frame.add(button1);
frame.add(textField);
frame.setLayout(null);
frame.add(text);
frame.setVisible(true);
frame.add(button2);
}
public static void nextRound() {
tries ++;
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!!");
System.out.println("DU hast " + tries + " Versuche gebraucht!");
text.setText("Richtig geraten mit " + tries + " Versuchen!");
} else {
tries++;
if(number < myNumber) {
text.setText("Falsch geraten! Deine Zahl ist zu klein!");
}else {
text.setText("Falsch geraten! Deine Zahl ist zu groß!");
}
//nextRound();
}
}
}
Angezeigt und in Possition ist der Button schon. nur wie bring ich Ihn dazu das Oben beschriebene umzusetzten?
Und ggf. das man den JButton1 mit der Enter Taste bestätigen kann und nicht nur via Mausklick.
Zuletzt bearbeitet: