Frage bei Programm mit Zufallskreisen

Status
Nicht offen für weitere Antworten.

Levitas

Mitglied
Hallo zusammen=)

Ich hab ein kleines Problem mit dem nun gleich folgenden Programm.
Das Programm soll bis zu 8 Kreise zeichnen, die unterschiedlich groß sind, unterschiedliche Farben haben und sich im Fenster zufällig anornden. Und das ganze soll random geschehen.
Woran das Problem genau liegt weiss ich leider nicht, weil der Compiler nicht meckert und ich soweit auch keine Syntax-Fehler sehe. Wenn ichd as Programm kompilieren und ausführen lasse, sieht man nur den Rahmen des Fensters und der Innenbereich ist nicht sichtbar, soz durchsichtig (kann schlecht beschreiben... man sieht nicht mal den weißen hintergrund). Und das ganze hängt sich dann auch auf:noe:

Keine Ahnung was da los ist... Vielleicht könnt ihr mir helfen!

Vielen Dank schonmal :)

Die Zeichenklasse:

Java:
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.*;


public class MyDrawPanel extends JPanel{
	
	MyDrawPanel panels = new MyDrawPanel();
	
	public void paint(Graphics g) { 
			
				
				//super.paintComponent(g);
				
				int rot 	= (int) (Math.random()*255);
				int gruen 	= (int) (Math.random()*255);
				int blau 	= (int) (Math.random()*255);
								
				Color randomColor = new Color(rot, gruen, blau);
				
				int v = (int)(Math.random() * 500); //zufallszahl bis 500
				int p; //Positionen	
				int d; //Durchmesser variabel
				int x, y; 	// Positionen
				int a; //Anzahl der Kreise

				
				for(a=1; a<=8; ++a) { //soviele Kreise werden gezeichnet
				
					for (p=1; p<=v; ++p) { //soviele Positionen gibt es
						x = (int) (Math.random() * v); //horizontale Pos. bis 600
						y = (int) (Math.random() * v); //vertikale Pos. bis 600
	
							for (d=1; d<=30; ++d) { //durchmesser ist höchstens 30
									d = (int) (Math.random() * 30);
									}
						
						g.setColor(randomColor);
						g.drawOval(x,y,d,d);
					}
				}	
		}
}

Die Mainklasse:

Java:
import javax.swing.JFrame;


public class Test {
	public static void main (String[]args){
		
		JFrame f 		= new JFrame();
		f.setTitle("Fenster");
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setSize(300, 300);
		f.add(new MyDrawPanel());
		f.setVisible(true);
		//f.repaint(500, x, y, width, height);
	}
}
 
W

warden

Gast
ich denke du hast eine Endlosschleife:
Java:
for (d=1; d<=30; ++d) { //durchmesser ist höchstens 30
                                    d = (int) (Math.random() * 30);
                                    }
[code=Java]

Die for-schelife soll solange durchlafen werden bis d >= 30 ist. und in der schleife wird d auf einen werd gesetzt der maximal 30 sein kann.
d.h. er hängt solange in einer Endlosschleife bis zufällig mal genau 30 rauskommt.

Was sollen die ganzen for schleifen überhaupt?

so müsste es doch reichen:

[code=Java]
@Override
    public void paint(Graphics g) {

                int v = 300; // größe des Anzeigebercihs
                int p; //Positionen
                int d; //Durchmesser variabel
                int x, y;   // Positionen
                int a; //Anzahl der Kreise


                for(a=1; a<=8; ++a) { //soviele Kreise werden gezeichne
                        int rot     = (int) (Math.random()*255);
                        int gruen   = (int) (Math.random()*255);
                        int blau    = (int) (Math.random()*255);
                   
                        x = (int) (Math.random() * v); //horizontale Pos. bis v
                        y = (int) (Math.random() * v); //vertikale Pos. bis v

                           
                        d = 10 + (int) (Math.random() * 20);  // mindestradius 10 höchstradius 30
                                  

                        g.setColor(new Color(rot, gruen, blau));
                        g.drawOval(x,y,d,d);
                   
                }
        }
 
W

warden

Gast
noch was:

Java:
public class MyDrawPanel extends JPanel{
    
    MyDrawPanel panels = new MyDrawPanel(); // die Zeile muss raus
    
    public void paint(Graphics g) {

In der main funktion wird ja schon eine Instanz von MyDrawPanel gebildet:

f.add(new MyDrawPanel());
 

Levitas

Mitglied
Hey warden!

Danke für die schnelle Antwort! Echt super! Werds leider heute nicht mehr schaffen... schau es mir gleich morgen an und werde dann bescheid geben obs geklappt hat =)

Danke schonmal!
 

Levitas

Mitglied
ok habs jetzt mal mit dem neuen Code versucht... du hast vollkommen recht mit den Schleifen.... sind völlig unnötig, weiss auch nicht wiewso cih die verwendet hab^^ habs jetzt kompiliert aber nun kommt folgende Fehlermeldung:

Java:
Exception in thread "main" java.lang.StackOverflowError
	at sun.awt.AppContext.get(Unknown Source)
	at javax.swing.RepaintManager.currentManager(Unknown Source)
	at javax.swing.RepaintManager.currentManager(Unknown Source)
	at javax.swing.RepaintManager.currentManager(Unknown Source)
	at javax.swing.JComponent.repaint(Unknown Source)
	at java.awt.Component.repaint(Unknown Source)
	at javax.swing.JComponent.setBackground(Unknown Source)
	at javax.swing.LookAndFeel.installColors(Unknown Source)
	at javax.swing.LookAndFeel.installColorsAndFont(Unknown Source)
	at javax.swing.plaf.basic.BasicPanelUI.installDefaults(Unknown Source)
	at javax.swing.plaf.basic.BasicPanelUI.installUI(Unknown Source)
	at javax.swing.JComponent.setUI(Unknown Source)
	at javax.swing.JPanel.setUI(Unknown Source)
	at javax.swing.JPanel.updateUI(Unknown Source)
	at javax.swing.JPanel.<init>(Unknown Source)
	at javax.swing.JPanel.<init>(Unknown Source)
	at javax.swing.JPanel.<init>(Unknown Source)
	at uebungen.MyDrawPanel.<init>(MyDrawPanel.java:7)
	at uebungen.MyDrawPanel.<init>(MyDrawPanel.java:9)
	at uebungen.MyDrawPanel.<init>(MyDrawPanel.java:9) //diese Zeile wird jetzt voll oft wiederholt
        ....

nochmal der Code im Ganzen:

Java:
package uebungen;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.*;


public class MyDrawPanel extends JPanel{
	
	MyDrawPanel panels = new MyDrawPanel();
	
	public void paint(Graphics g) {
		 
        int v = 300; // größe des Anzeigebercihs
        //int p; //Positionen
        int d; //Durchmesser variabel
        int x, y;   // Positionen
        int a; //Anzahl der Kreise


        for(a=1; a<=8; ++a) { //soviele Kreise werden gezeichnet
                int rot     = (int) (Math.random()*255);
                int gruen   = (int) (Math.random()*255);
                int blau    = (int) (Math.random()*255);
           
                x = (int) (Math.random() * v); //horizontale Pos. bis v
                y = (int) (Math.random() * v); //vertikale Pos. bis v

                   
                d = 10 + (int) (Math.random() * 20);  // mindestradius 10 höchstradius 30
                          

                g.setColor(new Color(rot, gruen, blau));
                g.drawOval(x,y,d,d);
           
        }

		}
}

Die Testklasse:

Java:
package uebungen;

import javax.swing.JFrame;


public class Test {
	public static void main (String[]args){
		
		JFrame f 		= new JFrame();
		f.setTitle("Fenster");
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setSize(300, 300);
		f.add(new MyDrawPanel());
		f.setVisible(true);
	}
}
 

Levitas

Mitglied
Aaaah sorry! Hab vergessen den unnötigen Konstruktor zu entfernen =)
Mein Fehler!

Ganz großes Dankeschön =)
 

eRaaaa

Top Contributor

Levitas

Mitglied
Ah alles klar! Super! Bin hier neu im Forum und bin echt sehr positiv überrascht! Sehr kompetente Antworten und vor allem she schnell =) Hab euch auch schon weiterempfohlen! Werd hier auf jeden Fall weiter aktiv bleiben!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Frage zu Programm AWT, Swing, JavaFX & SWT 11
E Frage zum Schieberegler JSlider AWT, Swing, JavaFX & SWT 5
thor_norsk Java - Allgemeine - Frage AWT, Swing, JavaFX & SWT 14
thor_norsk Allgemeine Frage AWT, Swing, JavaFX & SWT 10
M Frage zu Java Bundesligaverwaltung AWT, Swing, JavaFX & SWT 7
thor_norsk Allgemeine Frage AWT, Swing, JavaFX & SWT 9
E Frage zum Textfeld AWT, Swing, JavaFX & SWT 8
H Swing JMenu aufgeklappt oder nicht - Wie frage ich das ab? AWT, Swing, JavaFX & SWT 5
pkm Frage wegen java.lang.IllegalStateException bei DocumentListener AWT, Swing, JavaFX & SWT 4
D Frage zu ActionListenern und AvtionEvents AWT, Swing, JavaFX & SWT 2
ralfb1105 JavaFX Daten zwischen Controllern austauschen- neue Frage AWT, Swing, JavaFX & SWT 7
F JavaFX Frage zum Logging AWT, Swing, JavaFX & SWT 6
E Prinzip: wie man Ereignisse in einer GUI verarbeit. Frage zum Design? AWT, Swing, JavaFX & SWT 10
ralfb1105 Swing Frage zu SwingWorker Verhalten bei cancel() AWT, Swing, JavaFX & SWT 2
J Frage zu setuserdata AWT, Swing, JavaFX & SWT 1
N Frage zu ListView AWT, Swing, JavaFX & SWT 11
L 2D-Grafik Frage zu Ellipse2D.Double, Abfrage, ob Punkt enthalten ist funktioniert nicht AWT, Swing, JavaFX & SWT 3
T Frage zu GUI - Button soll Objekt erfassen AWT, Swing, JavaFX & SWT 2
J Event Handling Frage zu der Funktion addActionListener AWT, Swing, JavaFX & SWT 2
J Frage zur objektorentierten Swing Programmierung AWT, Swing, JavaFX & SWT 10
T JavaFX Frage zum FX-Loader AWT, Swing, JavaFX & SWT 3
B drawRect Frage und Aufgabenstellung AWT, Swing, JavaFX & SWT 10
fLooojava GridLayout - Frage bezüglich Kachelgröße AWT, Swing, JavaFX & SWT 5
S Frage zu java.awt.EventQueue AWT, Swing, JavaFX & SWT 1
J Frage zu Java Projekt [2D Game] AWT, Swing, JavaFX & SWT 3
M Swing Grundlegende Frage zu SWING mit WindowBuilder AWT, Swing, JavaFX & SWT 11
M Frage zum Loggen von Fehlern AWT, Swing, JavaFX & SWT 3
T Swing API Frage zu Verzeichnisbäumen und JTree AWT, Swing, JavaFX & SWT 1
M Thread-Frage in SWT AWT, Swing, JavaFX & SWT 1
Q Cursor Frage AWT, Swing, JavaFX & SWT 8
W JavaFX TableView frage AWT, Swing, JavaFX & SWT 5
H Taschenrechnerprojekt in Javafx - Frage zu den Buttons in FXML AWT, Swing, JavaFX & SWT 1
I Grundsätzliche Frage zu ItemListener AWT, Swing, JavaFX & SWT 11
X Kurze Frage zu JPopup AWT, Swing, JavaFX & SWT 3
D Swing [Frage] ComboBox + Label AWT, Swing, JavaFX & SWT 3
D Frage zu JFrame und Graphics AWT, Swing, JavaFX & SWT 4
J Swing Frage zur Vorgehensweise (JTable?, JLabels?) AWT, Swing, JavaFX & SWT 8
S Frage zu Jtable / CellEditor AWT, Swing, JavaFX & SWT 1
kaoZ Frage zum einfügen von Componenten AWT, Swing, JavaFX & SWT 14
N Swing JTable anfänger frage AWT, Swing, JavaFX & SWT 2
S GridBagLayout-Frage AWT, Swing, JavaFX & SWT 1
V 2D-Grafik Frage zum Graphics Objekt AWT, Swing, JavaFX & SWT 2
F Swing JComboBox - Frage zur Größe AWT, Swing, JavaFX & SWT 11
G noch eine Frage zum EventDispachThread AWT, Swing, JavaFX & SWT 4
D MVC Frage AWT, Swing, JavaFX & SWT 6
Z Flackern trotz Offscreen Image / Doublebuffer, (+ Frage zu Pixelvergleich) AWT, Swing, JavaFX & SWT 25
GianaSisters 2D-Grafik BufferedImage.getSubimage - Frage AWT, Swing, JavaFX & SWT 7
M Frage zu KeyListener bzgl. JApplet AWT, Swing, JavaFX & SWT 3
M Frage zu Threads AWT, Swing, JavaFX & SWT 3
N Swing JComboBox Frage AWT, Swing, JavaFX & SWT 5
Luk10 g.drawString funktioniert nicht + Frage zur Text-Rendering Qualität AWT, Swing, JavaFX & SWT 7
Luk10 Frage zu Farb-Komposition AWT, Swing, JavaFX & SWT 9
K Gui Layout Frage AWT, Swing, JavaFX & SWT 5
V SWT Import Wizard - frage zur WizardPage AWT, Swing, JavaFX & SWT 5
N Swing Frage JXMapviewer AWT, Swing, JavaFX & SWT 4
GUI-Programmer Wieder ne Layout Frage AWT, Swing, JavaFX & SWT 11
GUI-Programmer LayoutManager Kurze Layout Frage - eine komponente mittig? AWT, Swing, JavaFX & SWT 5
lumo SWT Zeichnen bescheunigen bzw eine allg. Frage AWT, Swing, JavaFX & SWT 8
H Frage zu übergebenem Vector bzw. Boolean AWT, Swing, JavaFX & SWT 3
C 2D-Grafik BufferedImage laden, Frage zum Code AWT, Swing, JavaFX & SWT 2
VfL_Freak Swing Frage zu "new JPasswordField( 10 )" AWT, Swing, JavaFX & SWT 6
H Frage zu WindowBuilder Pro AWT, Swing, JavaFX & SWT 3
C Frage/Problem mit Jpanel AWT, Swing, JavaFX & SWT 4
S Frage zu TextArea AWT, Swing, JavaFX & SWT 2
GUI-Programmer Zeichnen in Swing - Frage AWT, Swing, JavaFX & SWT 6
Luk10 Frage zu Mouseevents AWT, Swing, JavaFX & SWT 7
J Refreshing Swing Frage AWT, Swing, JavaFX & SWT 10
F Frage zu Event KeyTyped bei jPanel AWT, Swing, JavaFX & SWT 4
A Frage zu StringBuilder AWT, Swing, JavaFX & SWT 2
S allg. Frage zur GUI-Architektur AWT, Swing, JavaFX & SWT 5
A Frage zu JDialog AWT, Swing, JavaFX & SWT 3
A Frage zur Methode matches() AWT, Swing, JavaFX & SWT 2
P LayoutManager Verständnis-Frage GridBagLayout AWT, Swing, JavaFX & SWT 7
H Allgemeine Frage zu Grafikfähigkeiten von Java AWT, Swing, JavaFX & SWT 24
D Repaint Frage, Design Frage AWT, Swing, JavaFX & SWT 2
Jats Frage zu JLabel & JTextField AWT, Swing, JavaFX & SWT 4
Y frage zu BufferedImage AWT, Swing, JavaFX & SWT 7
hdi Swing Frage zu invokeAndWait() Exceptions AWT, Swing, JavaFX & SWT 8
P Swing Frage zu paintComponent/getGraphics AWT, Swing, JavaFX & SWT 4
M Frage nach Swing Element AWT, Swing, JavaFX & SWT 3
S Frage zu Graphics2D AWT, Swing, JavaFX & SWT 3
T AWT Frage zu AWT AWT, Swing, JavaFX & SWT 5
B Frage zu Swing,Threads, SwingWorker und Socket Communikation AWT, Swing, JavaFX & SWT 4
F unspezifizierte Frage zu JTable/ Model AWT, Swing, JavaFX & SWT 6
B SWT Frage zu MVC und Data-Binding AWT, Swing, JavaFX & SWT 8
T LookAndFeel Look and Feel Frage AWT, Swing, JavaFX & SWT 2
J Java2D Kreis/Kurven Frage AWT, Swing, JavaFX & SWT 2
P Kurze Frage zur Gestaltung eines vertikalen Menüs AWT, Swing, JavaFX & SWT 2
Dit_ Frage zum Thema SwingUtilities.invokeLater AWT, Swing, JavaFX & SWT 5
Eldorado Frage zur Anwendung des MVC-Konzept AWT, Swing, JavaFX & SWT 33
G Frage zu processMouseEvent AWT, Swing, JavaFX & SWT 6
M Zoomen in ein JPanel... und eine andere kleine Frage AWT, Swing, JavaFX & SWT 3
D Swing implementierungs-technische Frage zu JList/AbstractListModel AWT, Swing, JavaFX & SWT 7
C Event Frage AWT, Swing, JavaFX & SWT 7
A Frage zu GridLayout AWT, Swing, JavaFX & SWT 4
F Frage zu WindowListeners AWT, Swing, JavaFX & SWT 2
E einfache Frage:warum ist Hintergrund grau ? AWT, Swing, JavaFX & SWT 24
E einfache Frage zu paintComponent und Graphics AWT, Swing, JavaFX & SWT 7
C Frage zu ActionListenern AWT, Swing, JavaFX & SWT 7
D Frage @ someActionEvent.getActionCommand() AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben