Folgende Situation: Ich habe eine JSplitPane (horizontal), die auf der rechten Seite ein JPanel bzw. eine davon selbst definierte, abgeleitete Klasse. In dieser wird eine Liste mit einer unbekannten Anzahl an JCheckBox-en gezeichnet. Die Funktion zum hinzufügen der Boxen wird beim Initialisieren zum ersten Mal vom Konstruktor aufgerufen.
Das Problem: Soll die Liste aktualisiert werden, weil sich die Anzahl der Boxen verändert hat, werden die Elemente mittels removeAll() zwar gelöscht, aber die Checkboxen erst angezeigt, wenn ich z.B. die Größe des Fensters mit der Maus ändere. Dabei rufe ich jedoch repaint in der Funktion auf und es passiert nichts (was man sieht...). Also praktisch:
ListeAnzeigen { removeAll -> for... this.add(JCheckBox) -> repaint }
Ich weiß jetzt nicht, wie man bevorzugt die Situation löst, das mit dem removeAll() war nur ne Idee von mir, für andere Vorschläge wäre ich daher auch dankbar.
*Edit: Die Liste wird übrigens bei der gewünschten Aktion gelöscht (removeAll funktioniert also), nur das add-en funktioniert wohl nicht richtig.
Das Problem: Soll die Liste aktualisiert werden, weil sich die Anzahl der Boxen verändert hat, werden die Elemente mittels removeAll() zwar gelöscht, aber die Checkboxen erst angezeigt, wenn ich z.B. die Größe des Fensters mit der Maus ändere. Dabei rufe ich jedoch repaint in der Funktion auf und es passiert nichts (was man sieht...). Also praktisch:
ListeAnzeigen { removeAll -> for... this.add(JCheckBox) -> repaint }
Ich weiß jetzt nicht, wie man bevorzugt die Situation löst, das mit dem removeAll() war nur ne Idee von mir, für andere Vorschläge wäre ich daher auch dankbar.
*Edit: Die Liste wird übrigens bei der gewünschten Aktion gelöscht (removeAll funktioniert also), nur das add-en funktioniert wohl nicht richtig.