Swing JLabel wird nicht angezeigt

gamebreiti

Mitglied
Hi ,

Habe mal wieder ein Layout Bug, den ich einfach nicht lösen kann.

Folgende Situation. Ich habe eine Methode in der ich ein int als Parameter übergebe (Spieleranzahl).

In der Methode soll je nach Spieleranzahl unterschiedlich viele Balken (JPanels) angezeigt werden, welche ich mit einem JLabel fülle.

1. JPanels werden wie gewünscht erstellt, jedoch wird immer nur das letzte JLabel auf dem jeweilig letztem JPanel angezeigt.

2. an den JPanels hängen MouseListeners dran, wenn ich diese anspreche werden auch die rechtlichen
Labels korrekt angezeigt.

alle Panels und Labels sind Instanzvariablen

hier der Code:
Java:
 public static void erzeugeSpielerbar(int anzahl){
    		
    		//MouseListenerObjekte
    		Player2 player2 = new Player2();
    		Player3 player3 = new Player3();
    		Player4 player4 = new Player4();
    		
    		for(int count = 0; count <= anzahl; count++){
    			
    			bar.isVisible();
        		bar.setBounds(0,0,283,85);
        		bar2.setBounds(0,0,283,85);
        		
    		if (count == 4){
    			spielerbar4.setBounds(875,256,283,85);
    			spielerbar4.setLayout(null);
    			spielerbar4.setOpaque(true);
    			spielerbar4.add(bar);
    			bar.setBounds(0,0,283,85);
    			spielerbar4.addMouseListener(player4);
    			spielerbar4.validate();
    			plan.add(spielerbar4);
       		}
    		if (count == 3){
    			bar.setBounds(0,0,283,85);
    			spielerbar3.setBounds(875,166,283,85);
    			spielerbar3.setLayout(null);
    			spielerbar3.add(bar);
    			spielerbar3.setOpaque(true);
    			spielerbar3.addMouseListener(player3);
    			spielerbar3.validate();
    	   		plan.add(spielerbar3);
    	  	}
    		if (count == 2){
    			bar.setBounds(0,0,283,85);
    			spielerbar2.setBounds(875,76,283,85);
    			spielerbar2.setLayout(null);
    			spielerbar2.add(bar);
    			spielerbar2.setOpaque(true);
    			spielerbar2.addMouseListener(player2);
    			spielerbar2.validate();
       	   		plan.add(spielerbar2);
    		}
    		}
    		
    }


repaint(), validate(), ???? Wenn ja, an welcher Stelle

Vielen Dank im vorraus

Breiti

P.S. ... ich weiss es geht auch ohne Schleife, war nur ein Versuch von Mir das neu zeichnen zu erzwingen ... da es ja nach dem MouseEvent angezeigt wird...
 
Zuletzt bearbeitet:

snueffel

Mitglied
Also vom Code her ist das ziemlich nichtssagend :bahnhof: Ich würde aber mal darauf tippen, dass du nicht jeweils ein neues Objekt, sondern immer eins an einer anderen Stelle einfügst...
 

Highchiller

Bekanntes Mitglied
Genau, das geht so nicht. Wenn du ein Objekt wie das JComponent kann immer nur einmal an einer Position hinzugefügt werden. Stell dir vor du malst ein Bild und willst das auf deinem Schreibtisch an Position A legen. Dann willst du das selbe Bild noch mal an Position B haben. Was du aber gerade tust, ist das alte Bild zu nehmen und auf Position B zu legen, dann ist Position A natürlich leer.

Also, immer ein neues Objekt davon erzeugen und das Problem sollte sich gelöst haben.
 

gamebreiti

Mitglied
okay ... also muß ich mein "bar" JLabel sooft erzeugen wie ich ich es brauche, also am bessten direkt in der Schleife oder in der If - Anweisung.
Nur warum funktioniert es dann nach dem Mouse-event, dort erzeuge ich ja auch kein neues Objekt. Sondern habe es bis dorthin auch nur einmal erzeugt am Anfang des Quellcodes.

Java:
static JLabel bar = new JLabel(bilder[46]); 
	static JLabel bar2 = new JLabel(bilder[45]); 
	public static JPanel spielerbar2 = new JPanel();
	public static JPanel spielerbar3 = new JPanel();
	public static JPanel spielerbar4 = new JPanel();

Eine Erklärung wäre schön ... doch bis dahin schonmal ein FETTES Danke an euch beide.

Gruß Breiti
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Text von JLabel wird nicht aktualisiert Allgemeine Java-Themen 5
Y Warum wird das JLabel falsch verschoben? Allgemeine Java-Themen 1
Mozart53 JLabel nur meinen Text verschieben ohne Image Allgemeine Java-Themen 3
heinz ketchup String im JLabel ausgeben und erneuern Allgemeine Java-Themen 6
F JLabel nach 5 Sekunden wieder leeren Allgemeine Java-Themen 7
Q JLabel Textausgabe funktioniert nicht Allgemeine Java-Themen 4
A Klassen und JLabel's Allgemeine Java-Themen 12
S JLabel auf JPanel Allgemeine Java-Themen 10
D JLabel in (int) Array Allgemeine Java-Themen 8
JAVAnnik Bilder in JLabel Array einfügen Allgemeine Java-Themen 2
X Kann JLabel in JFrame nicht aktualisieren Allgemeine Java-Themen 3
T Edit: JLabel+MouseListener oeffnet mehrere Instanzen Allgemeine Java-Themen 5
N Jlabel automatisch anpassen Allgemeine Java-Themen 3
H image in jtextarea/JLabel einbinden... Allgemeine Java-Themen 4
M Escape Sequence in JLabel Allgemeine Java-Themen 4
L JLabel um 90 Grad drehen Allgemeine Java-Themen 6
T ImageIcon und JLabel Allgemeine Java-Themen 16
D JLabel aktualisieren Allgemeine Java-Themen 4
N KeyEvent / JLabel Allgemeine Java-Themen 5
E Image auf einem JLabel darstellen Allgemeine Java-Themen 3
E Pixelweise auf einem JPanel/JLabel o.ä. zeichnen Allgemeine Java-Themen 4
S JLabel Allgemeine Java-Themen 2
M ein JLabel in einem JLabel? Allgemeine Java-Themen 3
M JLabel an Textlänge anpassen / Textlänge in pixel Allgemeine Java-Themen 3
B JCheckBox als JLabel Allgemeine Java-Themen 11
sliwalker JLabel-"Synchronisations"-Problem Allgemeine Java-Themen 7
G Html Link in einem JLabel? Allgemeine Java-Themen 3
N Lwjgl 3d Objekt wird schmaler, wenn es sich dreht Allgemeine Java-Themen 0
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19
berserkerdq2 Wenn ich einfach eine GIF in den Scenebuilder als Bild reinpacke, wird das dann asl Gif angezeigt Allgemeine Java-Themen 1
G Popup wird nicht sichtbar Allgemeine Java-Themen 9
8u3631984 Funktions Parameter mit Lombok "NonNull" annotieren wird in Jacococ Testcoverage nicht herausgefiltert Allgemeine Java-Themen 3
M Java Überprüfen ob .exe-Datei bereits ausgeführt wird Allgemeine Java-Themen 2
Calli11 Was muss ich hier in die Main schreiben, damit das Programm ausgeführt wird? Allgemeine Java-Themen 4
Sachinbhatt Wie wird die Typumwandlung bei Mehrfachvererbung in Java implementiert? Allgemeine Java-Themen 3
Y MVVM wie wird Eventhandler tausch geregelt Allgemeine Java-Themen 4
berserkerdq2 run-methode eines Threads so programmieren, dass 30x die Sekunde etwas ausgeführt wird. Allgemeine Java-Themen 44
T ImageIcon wird nicht angezeigt Allgemeine Java-Themen 6
N Warum wird die For Schleife nicht betreten Allgemeine Java-Themen 4
N warum wird es doppelt ausgegeben Allgemeine Java-Themen 6
A code wird nicht ausgeführt Allgemeine Java-Themen 3
T Schaltfläche wird nicht gefunden Allgemeine Java-Themen 4
N Eingabe wird immer als "false" ausgegeben Allgemeine Java-Themen 6
D Firebase retrieve data Problem, Child Element wird nicht angesprochen Allgemeine Java-Themen 0
M Frage-Antwortspiel wie Wer wird Millionär Allgemeine Java-Themen 1
Zrebna Gibt es eine Möglichkeit eine NPE zu vermeiden, wenn null returned wird? Allgemeine Java-Themen 3
R Warum wird mir in der Konsole das "Standard Array" ausgegeben? Allgemeine Java-Themen 2
C FileLock - Exception wird immer geworfen Allgemeine Java-Themen 4
R Was muss ich ändern, damit der Kreis links unten gezeichnet wird? Allgemeine Java-Themen 17
hello_autumn Java_Home geändert auf Java 13, trotzdem wird Java Version 8 angezeigt. Allgemeine Java-Themen 2
Thallius Char +1 wird int? Allgemeine Java-Themen 7
S Wenn eine Klasse zwei Interfaces mit derselben Methodensignatur implementiert: welche wird aufgerufen? Allgemeine Java-Themen 15
F Scrollbar wird nicht angezeigt Allgemeine Java-Themen 0
B Discord Bot - Funktion wird nicht aufgerufen Allgemeine Java-Themen 1
I Temp-Datei wird nicht gelöscht Allgemeine Java-Themen 12
S If-Menü wird doppelt ausgegben Allgemeine Java-Themen 4
P Variable wird in for - loop nicht richtig hochgezählt Allgemeine Java-Themen 11
S Wird bei den JREs 9, 10, 11+ ueberhaupt noch Bytecode ausgefuehrt..? Allgemeine Java-Themen 8
FRI3ND JFrame wird nicht angezeigt Allgemeine Java-Themen 3
T Plötzlich wird package nicht mehr gefunden Allgemeine Java-Themen 3
X Klassen File-Klasse wird als Directory markiert Allgemeine Java-Themen 8
S Datei wird nicht gefunden Thread.currentThread().getContextClassLoader().getResourceAsStream() Allgemeine Java-Themen 1
mrbig2017 Sleep wird ignoriert und der Thread wartet nicht Allgemeine Java-Themen 1
mrbig2017 Threads wait wird nicht durch notify beendet! Allgemeine Java-Themen 3
kodela Klassen Klassenvariable wird nicht gesetzt Allgemeine Java-Themen 23
M Was geschieht mit Java-Klasse, die aus ArrayList entfernt wird? Allgemeine Java-Themen 10
kodela Drücken der ALT-Taste wird nur bei jedem zweiten Mal erkannt Allgemeine Java-Themen 5
Arif Input/Output Serialisierung - Datei wird nicht erzeugt Allgemeine Java-Themen 3
D Cursor unsichtbar, wenn Kontextmenü aufgerufen wird Allgemeine Java-Themen 5
K Arbeitsspeicher wird langsam voll Allgemeine Java-Themen 6
The Pi Wie oft wird ein Buchstabe in einem Wort wiederholt? Allgemeine Java-Themen 16
N Datentypen If-Statement wird "übersprungen" Allgemeine Java-Themen 2
F Java Mail Problem: Authentifizierung wird nicht immer mitgeschickt Allgemeine Java-Themen 1
T Textarea text wird immer überschrieben Allgemeine Java-Themen 4
C Durch klicken von Button in GUI wird leeres Fenster geöffnet und nicht mein Spiel "Memory" Allgemeine Java-Themen 13
T Java wird nicht gefunden Allgemeine Java-Themen 32
Tacofan GIF-Bild wird "zerstört" Allgemeine Java-Themen 3
Z Exception wird nicht ausgelöst Allgemeine Java-Themen 2
Sin137 Interface Eingabe wird doppelt angezeigt Allgemeine Java-Themen 2
B Threads Timer wird immer schneller Allgemeine Java-Themen 6
N Maven ObjectMapper Error wenn das File gespeichert wird Allgemeine Java-Themen 0
G Methoden Aus einem Event, wo ich weiß, dass es ausgeführt werden wird, eine Get-Methode basteln Allgemeine Java-Themen 8
F Wert in Variable schreiben, wenn diese gerade genutzt wird Allgemeine Java-Themen 10
E Java wird beendet nach paar Sekunden Allgemeine Java-Themen 14
U Erkennen, ob PC benutzt wird Allgemeine Java-Themen 4
O Programm wird einfach "gekillt" Allgemeine Java-Themen 3
P Prüfen ob es Variable mit Namen gibt der als String übergeben wird Allgemeine Java-Themen 7
P Zwei ArrayLists: Ohne die eine überhaupt anzurühren, wird sie verändert Allgemeine Java-Themen 2
B Abfragenteil wird nicht aufgerufen Allgemeine Java-Themen 2
Todesbote JFileChooser im Vordergrund (*.jar wird mittels shell_exec in PHP aufgerufen) Allgemeine Java-Themen 1
T Sicherheitshinweis - Zertifikat wird angefordert Allgemeine Java-Themen 5
L SetBounds wird vor dem Konstruktorcode aufgerufen - Wenn Startleiste links Allgemeine Java-Themen 1
P "Overriden statische Methode" Statische Methode die vererbt wird Allgemeine Java-Themen 5
I CountDown wird durch JOptionPane unterbrochen Allgemeine Java-Themen 11
P Wird double und float auf jedem Computer gleich berechnet? Allgemeine Java-Themen 10
G Tabelle wird nicht richtig dargestellt Allgemeine Java-Themen 9
HarleyDavidson Threads ProgressMonitor wird nicht angezeigt! Allgemeine Java-Themen 6
J OOP Überwachen, ob ein Objekt erzeugt wird Allgemeine Java-Themen 9
S Byte Array welches in Laufzeit aufgelöst wird // Objekt Array Allgemeine Java-Themen 3
A Long variable wird negativ??? Allgemeine Java-Themen 1

Ähnliche Java Themen

Neue Themen


Oben