Warum ist das Fenster nicht schwarz?

NHI

Mitglied
Hi, es tut mir leid wenn ich euch hier mit einer solchen Anfänger lapalie belästige aber ich bräuchte da echt Hilfe.

Danke im voraus Screenshots folgen
 

httpdigest

Top Contributor
Du solltest Code lieber direkt als Text hier reinkopieren. Und BITTE auch mit code-Tags.
Lösung zu deinem Problem:
Java:
Var.jf1.getContentPane().setBackground(java.awt.Color.BLACK);
 

NHI

Mitglied
Also erst mal danke für die raschen und durchaus hilfreichen Antworten.Ja das hat mich weiter gebracht aber warum werden die JLabels nicht gezeichnet (müsste noch ne weiss gestrichelte Linie verlaufen), wäre nett wenn mir da auch noch geholfen werden könnte, wie gesagt bin halt ein Anfänger.
 

mihe7

Top Contributor
Evtl. weil Du paintcomponent und nicht paintComponent geschrieben hast? Die @Override-Annotation hilft, solche Fehler zu vermeiden:
Code:
@Override
public void paintComponent(Graphics g)
 

Javinner

Top Contributor
@NHI
Damit man dich besser versteht, lade doch einfach dein Code in Code-Tags hoch.
Was sind Code-Tags, fragst du dich? Wenn du mir antworten willst, siehst du in der Leiste einige Buttons. Nimm den vierten von Rechts und drücke kurz darauf. Es erscheint ein Menü mit vier Einträgen. Nimm Code
, wenn du ein Code-Stück hochladen willst. Nimm dabei Java, wenn es sich um Java-Code handelt.
Wenn du eine Klasse oder mehrere hast, die recht viel Code enthalten, eignet sich derSpoiler gut für. Beachte dabei, dass auch im Spoiler der Code in Code-Tags stehen sollte.

Wenn du etwas hochladen willst, ein Bild zum Beispiel, dann schau dir die drei Buttons unten Rechts an. Wähle Datei hochladen, um eine Datei hochzuladen. Schau dich um, Weitere Einstellungen bieten weitere Einstellungen an..

Hilf den anderen, dir helfen zu wollen ;)
 

NHI

Mitglied
package pack1;

import java.awt.*;

import javax.swing.JLabel;

public class Draw extends JLabel {

/**
*
*/
private static final long serialVersionUID = 1L;

protected void paintcomponent (Graphics g) {

super.paintComponent( g);

Graphics2D g2D = (Graphics2D) g;
g2D.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);

g.setColor(Color.black);
g.fillRect(0, 0, Var.screenBreite, Var.screenHöhe); // hier taucht das problem auf, dass das fenster beim abspielen des programms nicht schwarz ist

g.setColor(Color.white);

for (int i = 0; i <= 30; i++) {
g.fillRect(Var.screenBreite/2-5, i*20, 10, 10);

}

repaint();

}


}
Code:
 

NHI

Mitglied
Code:
package pack1;

import java.awt.*;

import javax.swing.JLabel;

public class Draw extends JLabel {

    /**
     *
     */
    private static final long serialVersionUID = 1L;

    protected void paintcomponent (Graphics g) {
       
        super.paintComponent( g);
       
        Graphics2D g2D = (Graphics2D) g;
        g2D.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
       
        g.setColor(Color.black);
        g.fillRect(0, 0, Var.screenBreite, Var.screenHöhe);                    // hier taucht das problem auf, dass das fenster beim abspielen des programms nicht schwarz ist
          
        g.setColor(Color.white);
       
        for (int i = 0; i <= 30; i++)  {
            g.fillRect(Var.screenBreite/2-5, i*20, 10, 10);
           
        }
       
        repaint();
       
    }
   
   
}
 

NHI

Mitglied
Code:
package pack1;

import javax.swing.*;

public class GUI {

    public GUI() {
        // TODO Auto-generated constructor stub
        Var.jf1 = new JFrame();
        Var.jf1.setSize(Var.screenBreite, Var.screenHöhe);
        Var.jf1.setTitle("Pong");
        Var.jf1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        Var.jf1.setLayout(null);
        Var.jf1.setResizable(false);
        Var.jf1.setVisible(true);
        Var.jf1.setLocationRelativeTo(null);
        Var.jf1.addKeyListener(new KeyHandler());
        Var.jf1.requestFocus();
        Var.jf1.getContentPane().setBackground(java.awt.Color.BLACK);
       
        Draw lbldraw = new Draw();
        lbldraw.setBounds( 0,0, Var.screenBreite, Var.screenHöhe );
        lbldraw.setVisible(true);
        Var.jf1.add(lbldraw);
       
       
}
}
 

NHI

Mitglied
Code:
package pack1;

import javax.swing.*;

public class Var {
     static JFrame jf1;
     static int screenBreite = 800, screenHöhe = 600;
     static int x = 20, y = 185;
     static boolean moveup = false, movedown = false ;
    public Var() {
        // TODO Auto-generated constructor stub
    }

}
 

mihe7

Top Contributor
OK, lass stecken: wie ich eingangs schon geschrieben habe, heißt die Methode in Draw nicht paintcomponent sondern paintComponent. Wenn Du sie umbenennst, dann bekommst Du die weißen Punkte und die Zeile Var.jf1.getContentPane().setBackground(java.awt.Color.BLACK); in GUI brauchst Du dann auch nicht mehr.
 

NHI

Mitglied
keine Ahnung vielleicht habe ich nicht das c der methode verändert komisch aber vielen dank, das ist jetzt wirklich ein wichtiger Erfolgsmoment für mich :)

den anderen natürlich auch herzlichen Dank
 

mihe7

Top Contributor
Swing-Komponenten haben eine Methode paintComponent(Graphics), die beim Zeichnen des Containers, der die Komponente enthält, aufgerufen wird. Deine Draw-Klasse erweitert JLabel und wird damit selbst zu einer Swing-Komponente. Daher kannst Du sie auch wie jede andere Swing-Komponente verwenden.

Wenn Du in Draw eine Methode paintcomponent (statt paintComponent) erstellst, wird diese Methode niemals aufgerufen, denn Swing kennt diese Methode nicht. Stattdessen wird die von JLabel geerbte paintComponent-Methode ausgeführt.

Du willst aber die von JLabel geerbte Methode paintComponent-Methode überschreiben. So ein Tippfehler ist natürlich schnell passiert. Deshalb bietet es sich an, vor die Methodendeklaration ein @Override zu schreiben. Damit gibst Du bekannt, dass die folgende Methode eine geerbte Methode überschreibt. Das hätte bei Dir dann so ausgesehen:

Java:
@Override
protected void paintcomponent(Graphics g) { .. }

Probier das mal aus. Du wirst sehen, dass Du dann einen Compilerfehler bekommst bzw. Dir die IDE (Eclipse/NetBeans/...) bereits einen Fehler anzeigt.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Java Andere Fenster in Borderless-Mode setzen Spiele- und Multimedia-Programmierung 16
S Draw Package - mehere Fenster will aber nur eins Spiele- und Multimedia-Programmierung 1
S 2D Spiel im Vollbild langsamer als im Fenster Spiele- und Multimedia-Programmierung 11
B Spiele programmieren für ein Fenster? Spiele- und Multimedia-Programmierung 14
T Mausklick auf Fenster in Verbindung zu RadioButtons Spiele- und Multimedia-Programmierung 9
D [JAVA3D] Es werden 2 Fenster erzeugt und auf dem falschen gezeichnet Spiele- und Multimedia-Programmierung 3
E JOGL nur weißes Fenster Spiele- und Multimedia-Programmierung 2
J LWJGL - schwarzes Fenster Spiele- und Multimedia-Programmierung 5
H Radius in neuem Fenster eingeben Spiele- und Multimedia-Programmierung 9
T 2 Fenster bei JPCT Spiele- und Multimedia-Programmierung 5
Kr0e JOGL & Anpassung ins Fenster Spiele- und Multimedia-Programmierung 2
B Bild wird nicht geladen Spiele- und Multimedia-Programmierung 4
Fabel TicTacToe MiniMax Algorithmus geht nicht Spiele- und Multimedia-Programmierung 4
ThoraxLaneus Minecraft MCP-Client mit Optifine fertig machen in IntelliJ klappt nicht ganz Spiele- und Multimedia-Programmierung 6
K Mein Jump and Run charakter bewegt sich nicht mehr rückwärts... Spiele- und Multimedia-Programmierung 0
P Pokemon Spiel Funktioniert nicht ? Spiele- und Multimedia-Programmierung 3
D MIDIdevice open funktioniert nicht Spiele- und Multimedia-Programmierung 1
Mika_MDF Minecraft Eclipse startet Minecraft nicht? Spiele- und Multimedia-Programmierung 23
H Musik Datei lädt nicht? Spiele- und Multimedia-Programmierung 8
A Kollision funktioniert nicht richtig bei zu schneller Geschwindigkeit des Spielers Spiele- und Multimedia-Programmierung 0
JeremyStarTM Minecraft Minecraft Spigot Server akzeptiert JAR-Version nicht Spiele- und Multimedia-Programmierung 8
K Das Leerzeichen der Tastatur wird nicht gleichgesetzt mit dem Leerzeichen aus der Text Datei Spiele- und Multimedia-Programmierung 5
P Teamspeak interface mit JFrame funktioniert nicht Spiele- und Multimedia-Programmierung 3
coolian slick lwjgl text darstellen mit UnicodeFont funktoniert nicht? Spiele- und Multimedia-Programmierung 11
Z Minecraft Multiplayer geht nicht Spiele- und Multimedia-Programmierung 2
L Minecraft 1.7.10 Server startet nicht Spiele- und Multimedia-Programmierung 1
R Memory - Nicht alle Button lassen sich aktivieren? Spiele- und Multimedia-Programmierung 1
D Kollision funktioniert unten aber nicht oben Spiele- und Multimedia-Programmierung 4
C Java findet FluidSynth nicht Spiele- und Multimedia-Programmierung 2
N der Player bewegt sich nicht Spiele- und Multimedia-Programmierung 14
D Java Bild bewegen funktioniert nicht Spiele- und Multimedia-Programmierung 8
Damtonix Gameloop funktioniert nicht! Spiele- und Multimedia-Programmierung 6
N Warum tut der Gegner nicht das was er soll? Spiele- und Multimedia-Programmierung 13
B Programmieren wie der Befehl /ban in Minecraft geblockt wird aber nicht /ban mit einem Argument Spiele- und Multimedia-Programmierung 1
A Dateifehler - Öffnet nicht Spiele- und Multimedia-Programmierung 7
temi libGDX Box2d ApplyTorque() funktioniert nicht Spiele- und Multimedia-Programmierung 1
R Laufbewegung geht nicht.. Spiele- und Multimedia-Programmierung 1
J OpenGL Bild wird nicht richtig angezeigt Spiele- und Multimedia-Programmierung 2
S GetBufferStrategy-Methode wird nicht angezeigt Spiele- und Multimedia-Programmierung 6
M KeyListener funktioniert nicht während Timer läuft Spiele- und Multimedia-Programmierung 26
F vlcj läuft nicht exportiert, aber in Eclipse Spiele- und Multimedia-Programmierung 2
A MouseListener ändert nicht das Lable Icon. Spiele- und Multimedia-Programmierung 2
G LWJGL Rendert nicht Spiele- und Multimedia-Programmierung 3
A Spielball bewegt sich nicht richtig, prallt falsch ab Spiele- und Multimedia-Programmierung 7
S KeyEvent funktioniert nicht, wenn Buttons dem Frame hinzugefügt werden Spiele- und Multimedia-Programmierung 7
Blender3D VLCJ Video lässt sich nicht mehr abspielen nach mysql Installation Spiele- und Multimedia-Programmierung 1
J Programm kann Audio Datei nicht finden Spiele- und Multimedia-Programmierung 7
Viktim Snake - Schlange wächst nicht Spiele- und Multimedia-Programmierung 3
J Mensch Ärgere Dich nicht - Künstliche Intelligenz Spiele- und Multimedia-Programmierung 2
C Export als .jar funktioniert nicht richtig (JAVA 3D) Spiele- und Multimedia-Programmierung 5
L Mensch ärgere dich nicht Spiele- und Multimedia-Programmierung 9
Polarfuchs Status von Midi Datei(wird gerade abgespielt oder nicht) Spiele- und Multimedia-Programmierung 0
A Bild(sequenz) wird nicht geladen Spiele- und Multimedia-Programmierung 1
4 AudioSystem.write() wirft IllegalArgumentException, obwohl dies eig. nicht passieren dürfte Spiele- und Multimedia-Programmierung 2
V Methoden werden zwar ausgeführt führen aber nicht zum Ergebnis Spiele- und Multimedia-Programmierung 5
M [JOGL] eclipse export Runnable Jar - startet nicht Spiele- und Multimedia-Programmierung 3
B LWJGL / OPENGL Kriege Depth-Test nicht hin :( Spiele- und Multimedia-Programmierung 0
S Slick2D KeyInput reagiert nicht. Spiele- und Multimedia-Programmierung 3
S Quaxli's Heli Spiel läuft nicht nach Plan Spiele- und Multimedia-Programmierung 2
W [libGDX] findet SplashScreen.png nicht Spiele- und Multimedia-Programmierung 4
T LWJGL VBO's funktionieren nicht, geben aber auch keinen Fehler Spiele- und Multimedia-Programmierung 0
Androbin Kollision zwischen Raster und Nicht-Raster Spiele- und Multimedia-Programmierung 2
O Fehler bei Programmierung lässt Figur nicht bewegen Spiele- und Multimedia-Programmierung 5
Androbin Mein Spiel will sich nicht zeichnen lassen !!! Spiele- und Multimedia-Programmierung 7
B Mein Programm reagiert nicht auf den Tasstendruck Spiele- und Multimedia-Programmierung 1
F HashMap liefert nicht gewünschten Wert (gar nix) Spiele- und Multimedia-Programmierung 5
J mensch ärger dich nicht Spiele- und Multimedia-Programmierung 1
M Spiele Tutorial.. Findet Bilddateien nicht Spiele- und Multimedia-Programmierung 6
G Ausführbare Jar findet Bilddateien nicht... Spiele- und Multimedia-Programmierung 4
P Rotation von Sprite klappt nicht Spiele- und Multimedia-Programmierung 4
A Minecraft Java Ubuntu Minecraft Server startet nicht - ERROR (SIGSEGV) Spiele- und Multimedia-Programmierung 7
F LWJGL: Licht und GL_LINES funktioniert nicht Spiele- und Multimedia-Programmierung 6
A [LWJGL] BMP Textur wird nicht richtig dargestellt Spiele- und Multimedia-Programmierung 8
N JPanel Inhalt aktualisiert nach Thread.sleep nicht Spiele- und Multimedia-Programmierung 2
S LWJGL Rechteck wird nicht gezeichnet Spiele- und Multimedia-Programmierung 6
J KeyMapping funktioniert nicht Spiele- und Multimedia-Programmierung 5
R Minecraft Minecraft läuft nicht paralel mit minecraft server ? Spiele- und Multimedia-Programmierung 3
S eine nullpointerexception, wo sie nicht sein sollte Spiele- und Multimedia-Programmierung 12
J Java3D - Textur laden geht nicht Spiele- und Multimedia-Programmierung 9
S Mensch-Ärger-Dich-Nicht Methoden Spiele- und Multimedia-Programmierung 2
S VLCJ libjawt.so nicht gefunden Spiele- und Multimedia-Programmierung 3
J Sound einbinden funktioniert nicht Spiele- und Multimedia-Programmierung 13
A JME3 will Blender/j3o Objekte nicht einladen Spiele- und Multimedia-Programmierung 3
D Slick Lib - Bilder einlesen funktioniert nicht Spiele- und Multimedia-Programmierung 2
Q BufferedImage vs. Heap Space ‒ Warum wird der Speicher nicht freigegeben? Spiele- und Multimedia-Programmierung 6
T LWJGL Grafik meines Projektes läuft nicht korrekt auf meinem iMac Spiele- und Multimedia-Programmierung 19
B LWJGL/OpenGL rendert manche Objekte nicht Spiele- und Multimedia-Programmierung 6
D Key Listener reagiert nicht ! Spiele- und Multimedia-Programmierung 4
CookieSoft 3D Würfel will sich nicht drehen! [LWJGL] Spiele- und Multimedia-Programmierung 2
T lwjgl vertex buffer rendert nicht Spiele- und Multimedia-Programmierung 9
R Kollisionsabfrage haut nicht hin Spiele- und Multimedia-Programmierung 15
R Probleme mit JPanel!KeyListener geht nicht Spiele- und Multimedia-Programmierung 6
A Patter Array Eintrag vergleichen geht nicht!!! Spiele- und Multimedia-Programmierung 3
M Jmonkey läuft nicht Spiele- und Multimedia-Programmierung 7
0 Finde den Fehler nicht Spiele- und Multimedia-Programmierung 2
M Mathetrainer - Reset Button funktioniert nicht! Spiele- und Multimedia-Programmierung 8
A OpenGL Textur und nicht Textur Spiele- und Multimedia-Programmierung 2
D JAR file startet manchmal nicht Spiele- und Multimedia-Programmierung 3
S MouseEvent.getPint() ist nicht Courser Spitze Spiele- und Multimedia-Programmierung 4
M Minecraft Bukkit Server VM Kann nicht Vergrößert werden Spiele- und Multimedia-Programmierung 20

Ähnliche Java Themen

Neue Themen


Oben