Hallo liebe Leute,
ich hoffe ihr könnt mir helfen, bin nämlich seit zwei Stunden am verzweifeln.
Seit etwa einem Monat versuche ich innbrünstig Java zu lernen, also habt Verständnis falls ihr im Quelltext grobe Patzer seht
Folgendes Problem bei mir. Ich habe erstmals eigenständig eine GUI-Anwendung für ein Lottozahlen Generator geschrieben. Dieser funktioniert auch soweit ganz gut. Nur kann man pro Aufruf des Programms lediglich ein Mal den Button "Lottozahlen erzeugen" bedienenen, danach ist Sense, es werden keine neuen Zahlen mehr erzeugt. Das versuche ich zu ändern, schaffe es aber nicht. Hoffe ihr könnt mir helfen.
Andere Verbesserungsvorschläge sind natürlich willkommen.
Danke im Voraus! :toll:
ich hoffe ihr könnt mir helfen, bin nämlich seit zwei Stunden am verzweifeln.
Seit etwa einem Monat versuche ich innbrünstig Java zu lernen, also habt Verständnis falls ihr im Quelltext grobe Patzer seht
Folgendes Problem bei mir. Ich habe erstmals eigenständig eine GUI-Anwendung für ein Lottozahlen Generator geschrieben. Dieser funktioniert auch soweit ganz gut. Nur kann man pro Aufruf des Programms lediglich ein Mal den Button "Lottozahlen erzeugen" bedienenen, danach ist Sense, es werden keine neuen Zahlen mehr erzeugt. Das versuche ich zu ändern, schaffe es aber nicht. Hoffe ihr könnt mir helfen.
Andere Verbesserungsvorschläge sind natürlich willkommen.
Danke im Voraus! :toll:
Java:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.lang.*;
public class Lotto extends JFrame {
JButton schalter;
JTextArea text;
class CWLauscher extends WindowAdapter {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
Lotto(String titel) {
super(titel);
setLayout(new GridLayout(2,1));
ImageIcon icon = new ImageIcon("lotto.png");
schalter = new JButton("Lottozahlen erzeugen",icon);
text = new JTextArea("\n\n Ihre heutigen Glьckszahlen lauten:");
add(text);
add(schalter);
addWindowListener(new CWLauscher());
schalter.addActionListener(new CALauscher());
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
class CALauscher implements ActionListener {
Random generator = new Random();
int zahl;
int anzahl = 0;
boolean eingefuegt;
HashSet<Integer> gezogen = new HashSet<Integer>();
public void actionPerformed(ActionEvent e) {
if(e.getSource() == schalter) {
String knopf;
StringBuffer output = new StringBuffer();
knopf = e.getActionCommand();
if(knopf.equals("Lottozahlen erzeugen")) {
while(true) {
zahl = generator.nextInt(50);
if(zahl == 0)
continue;
eingefuegt = gezogen.add(zahl);
if(!eingefuegt)
continue;
output.append(zahl);
output.append(" ");
text.setText(output.toString());
anzahl++;
if(anzahl == 6)
break;
}
}
}
}
}
public static void main(String[] args) {
Lotto auswahl = new Lotto("Lottozahlen Generator");
auswahl.pack();
auswahl.setSize(300,200);
auswahl.setVisible(true);
auswahl.setResizable(false);
}
}