ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
858
858
EMPFEHLEN
-
Hi,
Ich muss als Aufgabe, für die Schule, einen Lottozahlengenerator basteln. Der Code muss mind. 200 Zeilen lang sein, daher habe ich soviel Design Boxen gemacht.
Jetzt meine Frage: wie bekomme ich einen Button unter die Lottozahlen, der das Fenster aktualisiert und somit neue Zahlen generiert?
Wäre so froh wenn mir hier jemand helfen könnte, bei google und forum suche leider nicht brauchbares gefunden.
Gruss und Danke
dsone
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179
import java.awt.*; public class lotto extends Frame { public static void main(String[] args) { lotto lottofenster = new lotto(); /*************************** *** Fenstereigenschaften *** ****************************/ // Titel des Lottofensters lottofenster.setTitle("Lottozahlengenerator"); // Hintergrundfarbe des Lottofensters lottofenster.setBackground(new java.awt.Color(7,108,190)); // Cursor (Fadenkreuz) des Lottofensters lottofenster.setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.CROSSHAIR_CURSOR)); // Grösse des Lottofensters lottofenster.setSize(400,450); // Lottofenster sichtbar? Ja! lottofenster.setVisible(true); } public void paint(Graphics g) { int lottozahlen; // Variable fuer die Lottozahlen int lottozahlen_pruefen; // Variable fuer das pruefen der Lottozahlen int anzahl; // Variable fuer Anzahl der Lottozahlen int ganze_zahl; double wert; boolean doppelt; anzahl = 6; // Wert 6, für 6 Lottozahlen int lottozahl[] = new int[anzahl+1]; // Deinition eines Feldes mit einem Platz mehr for (lottozahlen = 1; lottozahlen <= anzahl; lottozahlen++) // Anzahl der Zufallszahlen { do // Schleife zur Feststellung von Doppelungen { doppelt = false; // Es gibt zunächst keine Doppelten wert = 44*Math.random()+1; // Erzeuge eine Zufallszahl zwischen 1 und 45 ganze_zahl = (int)wert; // Mache daraus eine ganze Zahl for (lottozahlen_pruefen = 1; lottozahlen_pruefen < lottozahlen; lottozahlen_pruefen++) // alle bisherigen (i) überprüfen { if (ganze_zahl == lottozahl[lottozahlen_pruefen]) { doppelt=true; // doppelte gefunden, merken in doppelt } } } while (doppelt==true); lottozahl[lottozahlen]=ganze_zahl; // gefundene Zahlmerken System.out.print(+lottozahl[lottozahlen]+"\t"); // und diese ausgeben } Button myButton = new Button ("Ein Button"); this.add(myButton); String lottozahl_1 = Integer.toString(lottozahl[1]); String lottozahl_2 = Integer.toString(lottozahl[2]); String lottozahl_3 = Integer.toString(lottozahl[3]); String lottozahl_4 = Integer.toString(lottozahl[4]); String lottozahl_5 = Integer.toString(lottozahl[5]); String lottozahl_6 = Integer.toString(lottozahl[6]); /*************************** *** Background BOX *** ****************************/ g.setColor(new Color(118,190,250)); // g.fillRect(14,34,242,42); // g.setColor(new Color(21,146,247)); // g.fillRect(15,35,240,40); // /*************************** *** BOX 1 *** ****************************/ g.setColor(Color.BLACK); // Schwarzes Rechteck von Box 1 g.fillRect(20,40,30,30); // Grösse von schwarzen Box 1 g.setColor(Color.LIGHT_GRAY); // Hellgraues Rechteck von Box 1 g.fillRect(21,41,28,28); // Grösse von hellgrauer Box 1 g.setColor(Color.WHITE); // Weisses Rechteck von Box 1 g.fillRect(22,42,26,26); // Grösse von weisser Box 1 g.setColor(Color.BLACK); // Farbe der Schrift (Schwarz) g.drawString(lottozahl_1, 27, 60); // Lottozahl 1 in der Box 1 zeichnen /*************************** *** BOX 2 *** ****************************/ g.setColor(Color.BLACK); // Schwarzes Rechteck von Box 2 g.fillRect(60,40,30,30); // Grösse von schwarzen Box 2 g.setColor(Color.LIGHT_GRAY); // Hellgraues Rechteck von Box 2 g.fillRect(61,41,28,28); // Grösse von hellgrauer Box 2 g.setColor(Color.WHITE); // Weisses Rechteck von Box 2 g.fillRect(62,42,26,26); // Grösse von weisser Box 2 g.setColor(Color.BLACK); // Farbe der Schrift (Schwarz) g.drawString(lottozahl_2, 67, 60); // Lottozahl 2 in der Box 2 zeichnen /*************************** *** BOX 3 *** ****************************/ g.setColor(Color.BLACK); // Schwarzes Rechteck von Box 3 g.fillRect(100,40,30,30); // Grösse von schwarzen Box 3 g.setColor(Color.LIGHT_GRAY); // Hellgraues Rechteck von Box 3 g.fillRect(101,41,28,28); // Grösse von hellgrauer Box 3 g.setColor(Color.WHITE); // Weisses Rechteck von Box 3 g.fillRect(102,42,26,26); // Grösse von weisser Box 3 g.setColor(Color.BLACK); // Farbe der Schrift (Schwarz) g.drawString(lottozahl_3, 107, 60); // Lottozahl 3 in der Box 3 zeichnen /*************************** *** BOX 4 *** ****************************/ g.setColor(Color.BLACK); // Schwarzes Rechteck von Box 4 g.fillRect(140,40,30,30); // Grösse von schwarzen Box 4 g.setColor(Color.LIGHT_GRAY); // Hellgraues Rechteck von Box 4 g.fillRect(141,41,28,28); // Grösse von hellgrauer Box 4 g.setColor(Color.WHITE); // Weisses Rechteck von Box 4 g.fillRect(142,42,26,26); // Grösse von weisser Box 4 g.setColor(Color.BLACK); // Farbe der Schrift (Schwarz) g.drawString(lottozahl_4, 147, 60); // Lottozahl 4 in der Box 4 zeichnen /*************************** *** BOX 5 *** ****************************/ g.setColor(Color.BLACK); // Schwarzes Rechteck von Box 5 g.fillRect(180,40,30,30); // Grösse von schwarzen Box 5 g.setColor(Color.LIGHT_GRAY); // Hellgraues Rechteck von Box 5 g.fillRect(181,41,28,28); // Grösse von hellgrauer Box 5 g.setColor(Color.WHITE); // Weisses Rechteck von Box 5 g.fillRect(182,42,26,26); // Grösse von weisser Box 5 g.setColor(Color.BLACK); // Farbe der Schrift (Schwarz) g.drawString(lottozahl_5, 187, 60); // Lottozahl 5 in der Box 5 zeichnen /*************************** *** BOX 6 *** ****************************/ g.setColor(Color.BLACK); // Schwarzes Rechteck von Box 6 g.fillRect(220,40,30,30); // Grösse von schwarzen Box 6 g.setColor(Color.LIGHT_GRAY); // Hellgraues Rechteck von Box 6 g.fillRect(221,41,28,28); // Grösse von hellgrauer Box 6 g.setColor(Color.WHITE); // Weisses Rechteck von Box 6 g.fillRect(222,42,26,26); // Grösse von weisser Box 6 g.setColor(Color.BLACK); // Farbe der Schrift (Schwarz) g.drawString(lottozahl_6, 227, 60); // Lottozahl 6 in der Box 6 zeichnen } public boolean handleEvent(Event e) { if (e.id == Event.WINDOW_DESTROY) System.exit(0); return super.handleEvent(e); } }
-
Hallo Dsone,
wieso zeichnest du alles auf das Frame. Viel einfacher ist es doch mit AWT Komponenten.
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
import java.awt.*; import java.awt.event.*; import java.util.Random; public class LottoGenerator extends Frame implements ActionListener { private Label l = new Label("Lotto Generator 2006"); private Panel p = new Panel(); private TextField[] t = new TextField[6]; private Button b = new Button("Generate new Combination"); public LottoGenerator() { super("Lotto Magic "); this.setLocationByPlatform(true); this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); b.addActionListener(this); p.setLayout(new GridLayout(1,6)); for (int i = 0; i < t.length; i++) { t[i] = new TextField(2); t[i].setEditable(false); t[i].setFocusable(false); p.add(t[i]); } this.add(l,BorderLayout.NORTH); this.add(p,BorderLayout.CENTER); this.add(b,BorderLayout.SOUTH); this.pack(); this.setVisible(true); } public static void main(String[] args) { new LottoGenerator(); } public void actionPerformed(ActionEvent e) { for (int i = 0; i < t.length; i++) { t[i].setText("Zahl"); } } }
Vg Erdal
-
Hi flashray,
ich kenne mich in Java leider noch ned wirklich gut aus.
Das mit dem zeichnen haben wir in der Schule eben angeschaut. In der Aufagbenstellung steht, man sollte keinen Fremdcode benutzen. Dazu sollte ich jede Codezeile verstehen und erklären können. Am liebsten wäre mir, wenn mir jemand einen Aktualisieren-Button in meinen Code zaubern könnte.
Lieber Gruss
dsone
-
Hallo Dsone,
füge folgenden Code noch hinzu:
Code :1 2 3 4
public lotto (){ Button myButton = new Button("Ein Button"); this.add(myButton,BorderLayout.SOUTH); }
und lösche die zwei ähnlichen Zeilen aus der Methode paint.
Vg Erdal
Ähnliche Themen
-
Lottozahlengenerator, Tic Tac Toe, C#
Von Roaddog99 im Forum .NET Application und Service DesignAntworten: 2Letzter Beitrag: 19.07.10, 10:12 -
RCP Statusline von per Button über eine Shell aktualisieren
Von ScoopDTN im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 4Letzter Beitrag: 21.04.10, 17:01 -
Lottozahlengenerator
Von di-five im Forum JavaAntworten: 2Letzter Beitrag: 16.01.09, 19:59 -
Webseite mit AWT-Button aktualisieren
Von korthi im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 1Letzter Beitrag: 02.11.04, 14:22 -
Button aktualisieren um neue Beschriftung anzuzeigen
Von Test im Forum C/C++Antworten: 3Letzter Beitrag: 12.02.04, 08:19





Zitieren
Login





