Dynamisches hinzufügen und entfernen von Bildern

Status
Nicht offen für weitere Antworten.

Theresa

Mitglied
Hallo,
muss eine Art Spiel machen, wo auf einem JPanel mehrmals das selbe Bild vorkommt.
Wenn man irgendwo anders auf einen Button klickt, müssen, je nachdem, Bilder aus dem JPanel hinzugefügt oder entfernt werden.
Ich habe eine Klasse vom JPanel abgeleitet, die unter anderem, sich mit einer bestimmten Anzahl von Bildern initialisieren lässt.

Das Problem ist jetzt dass ich nicht weiß, wie ich mit -repaint/paint/update/revalidate usw.- das JPanel dazu kriege, die Anzahl der angezeigten Bildern zu verändern, wenn ich auf das Button klicke.

Mein naiver Ansatz, der auch nicht funktioniert hat, war, in der Unterklasse von JPanel einen Zähler zu haben, für die Anzahl der Bilder, die gezeichnet werden sollen, beim klicken vom Button den Zähler erhöhen / senken, und dann repaint() aufrufen, und dann in der paint Methode von der Unterklasse von JPanel in einer Schleife von 0 bis zum Zähler Bilder hinzufügen.
Erstes Problem war, dass sich die Ansicht erst nachdem aktualisiert hat, wenn ich die größe vom Fenster änderte. Was sich mit revalidate() nach repaint() beheben lies.
Zweites Problem, das bisher ungelöste, ist dass die alten Bilder nicht gelöscht werden, so dann immer neue nach ihnen hinzugefügt werden.

Dazu noch eine Kleinigkeit, ich Benutze für die Bilder JLabels. Ist das richtig so? Sie müssen nicht anklickbar sein usw. nur halt erscheinen. Und dann auch mehrmals und wie gesagt, es soll sich nur die Anzahl verändern.
 

André Uhres

Top Contributor
JLabels ist für Bilder OK, eine paint Methode brauchen wir dann nicht. Es gibt zwei Ansätze: entweder wir fügen gleich alle JLabels zum Panel hinzu und machen mit setVisible immer nur soviele sichtbar, wie wir wollen. Oder wir fügen nur die JLabels hinzu, die wir brauchen. Im letzten Fall müssen wir bei eine Änderung der Anzahl daran denken, wieviel JLabels schon drin sind und dass wir eventuell einige mit remove wieder aus dem Panel entfernen müssen. Danach ist revalidate und repaint erforderlich.
 

Theresa

Mitglied
Ja, das hat funktioniert. Für Löschen einfach remove(index) benutzt, und dann repaint und revalidate.
Danke!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
U dynamisches JTree erstellen AWT, Swing, JavaFX & SWT 2
D Swing Dynamisches Dialog UI AWT, Swing, JavaFX & SWT 8
B 2D-Grafik Dynamisches Erstellen von Images und deren Animation AWT, Swing, JavaFX & SWT 4
M Swing Dynamisches Layout AWT, Swing, JavaFX & SWT 10
T dynamisches Koordinatenkreuz mit scalierung AWT, Swing, JavaFX & SWT 7
C Scollpane an dynamisches GridLayout anpassen? AWT, Swing, JavaFX & SWT 3
L Swing dynamisches Image-Panel in Layout einbinden AWT, Swing, JavaFX & SWT 10
N Swing Dynamisches Verhalten bei Änderung Fenstergröße AWT, Swing, JavaFX & SWT 6
trash Dynamisches Interface AWT, Swing, JavaFX & SWT 6
H LayoutManager Dynamisches Layout AWT, Swing, JavaFX & SWT 3
T Swing Dynamisches Bild AWT, Swing, JavaFX & SWT 8
T RCP-SWT dynamisches ScrolledComposite AWT, Swing, JavaFX & SWT 2
B dynamisches Spektrogramm in Java-Webanwendung AWT, Swing, JavaFX & SWT 3
G LookAndFeel Dynamisches Einlesen von LookAndFeels - NullPointerException AWT, Swing, JavaFX & SWT 4
M Dynamisches generieren und ausrichten von Komponenten AWT, Swing, JavaFX & SWT 11
L Dynamisches Ändern der Größe in JPanel mit paint()-Methode AWT, Swing, JavaFX & SWT 8
J Dynamisches füllen von GridBagLayout: Größe der Komponenten AWT, Swing, JavaFX & SWT 4
S GUI, dynamisches Wechseln von JPanels in einem JFrame AWT, Swing, JavaFX & SWT 2
L Dynamisches Erzeugen eines Button AWT, Swing, JavaFX & SWT 2
M Schwieriges Label - Font - Problem "Dynamisches Label&a AWT, Swing, JavaFX & SWT 7
C Dynamisches Zuweisen von Daten an eine JTable zur Laufzeit AWT, Swing, JavaFX & SWT 4
C ActionListener für dynamisches Menü AWT, Swing, JavaFX & SWT 8
F Bilder zu ausführbarer Jar-Datei hinzufügen AWT, Swing, JavaFX & SWT 5
K Tabelle zu Datenbank hinzufügen / Apache Derby AWT, Swing, JavaFX & SWT 7
Apfelbaum2005 Swing JFrame mehrere JPanels mit unterschiedlichen Formen hinzufügen AWT, Swing, JavaFX & SWT 1
N AWT JPanel zu Jframe hinzufügen AWT, Swing, JavaFX & SWT 2
L paintComponent in Panel eines Borderlayouts hinzufügen AWT, Swing, JavaFX & SWT 3
A JavaFX exportierte Jar ohne beim starten die Libs hinzufügen? AWT, Swing, JavaFX & SWT 2
P Swing jxmapviewer hinzufügen/nutzen funktioniert nicht AWT, Swing, JavaFX & SWT 7
D ObservableList Werte hinzufügen AWT, Swing, JavaFX & SWT 7
D JavaFX Probleme beim nachtäglichen hinzufügen der jfx dependency AWT, Swing, JavaFX & SWT 7
L Swing Wert vom Textfield in Array List hinzufügen AWT, Swing, JavaFX & SWT 2
N Einer TextArea ein ScrollPane hinzufügen AWT, Swing, JavaFX & SWT 8
J JButton Icon hinzufügen AWT, Swing, JavaFX & SWT 5
M TableView Zeile hinzufügen AWT, Swing, JavaFX & SWT 5
K JLabel mit Bilder im nicht initialisierten JPanel hinzufügen AWT, Swing, JavaFX & SWT 5
B Mit der ChoiceBox-Auswahl Textfelder hinzufügen AWT, Swing, JavaFX & SWT 18
dereki2000 Swing JFrame nah hinzufügen von Komponenten akualisieren. AWT, Swing, JavaFX & SWT 2
P JPanel KeyListener hinzufügen AWT, Swing, JavaFX & SWT 8
cool_brivk24 BufferedImage einem ClickEvent hinzufügen AWT, Swing, JavaFX & SWT 13
L ActionListener zu Button in Panel hinzufügen AWT, Swing, JavaFX & SWT 10
P Swing Mehrere JPanels auf ein JFrame hinzufügen? AWT, Swing, JavaFX & SWT 2
ralfb1105 jTextArea Scrollbar hinzufügen - mit Jigloo erstellt AWT, Swing, JavaFX & SWT 7
Q AWT TicTacToe Image auf Button hinzufügen AWT, Swing, JavaFX & SWT 5
J JFrame Panel hinzufügen AWT, Swing, JavaFX & SWT 10
Wurstsemmel SWT MenuItem dynamisch hinzufügen AWT, Swing, JavaFX & SWT 2
F JavaFX In SampleController ObservableList zu ListView hinzufügen AWT, Swing, JavaFX & SWT 0
MaxG. Swing Swing Komponenten zur Laufzeit hinzufügen AWT, Swing, JavaFX & SWT 2
MaxG. Swing JMenu einen Listener Hinzufügen AWT, Swing, JavaFX & SWT 25
Hijo2006 Tabsheets hinzufügen AWT, Swing, JavaFX & SWT 4
Ghostman1711 Hinzufügen ausgewählter Dateinen des Filechoosers zu einem JTable AWT, Swing, JavaFX & SWT 9
N Swing Wie Programm strukturieren? (Dynamisch Komponenten hinzufügen) AWT, Swing, JavaFX & SWT 1
J JavaFX Tableview Daten hinzufügen aus anderer Klasse AWT, Swing, JavaFX & SWT 7
J Tableview Daten hinzufügen und aktualisieren AWT, Swing, JavaFX & SWT 5
J Panel auf Frame löschen und neues Panel Hinzufügen AWT, Swing, JavaFX & SWT 4
M Buttons in JSplitPane hinzufügen AWT, Swing, JavaFX & SWT 6
K JavaFX NullpointerEx, kann nichts zur Pane hinzufügen AWT, Swing, JavaFX & SWT 10
X Swing JButton's zum JScrollPane hinzufügen geht nicht. Bitte um Hilfe. AWT, Swing, JavaFX & SWT 9
T Swing JTable Zeile mit ausgelesenen Werten mit Hilfe von einem Button hinzufügen AWT, Swing, JavaFX & SWT 1
A JavaFX Scene Builder eigene Klasse hinzufügen AWT, Swing, JavaFX & SWT 2
F Swing Image einem Button hinzufügen AWT, Swing, JavaFX & SWT 5
Shams Probleme bei dem Hinzufügen von Komponenten zu einem JFrame AWT, Swing, JavaFX & SWT 3
S Grafik in einer Klassen einfügen/hinzufügen AWT, Swing, JavaFX & SWT 1
P JavaFX TableView Item hinzufügen AWT, Swing, JavaFX & SWT 20
W Bei Button-klick neuen button in array hinzufügen AWT, Swing, JavaFX & SWT 7
X AWT Graphics2D zum LWJGL Display hinzufügen aber wie? AWT, Swing, JavaFX & SWT 4
F JTabbedPane mit Button zum Hinzufügen eines neuen Tabs AWT, Swing, JavaFX & SWT 6
V kann ich in einer Klasse stage und scene deklarieren, aber in anderen Klassen Inhalte hinzufügen ? AWT, Swing, JavaFX & SWT 5
K Swing JList - Element richtig hinzufügen AWT, Swing, JavaFX & SWT 4
L Swing Button in GridBackLayout positionieren und TitleBorder pro Spalte hinzufügen AWT, Swing, JavaFX & SWT 9
X Java Komponenten jeder Zeit hinzufügen können AWT, Swing, JavaFX & SWT 3
K SWT TitleAreaDialog - SelectionListener zur Message hinzufügen AWT, Swing, JavaFX & SWT 3
A Text (String) zu einer Box hinzufügen AWT, Swing, JavaFX & SWT 16
M JTextArea Zeile hinzufügen AWT, Swing, JavaFX & SWT 4
P Text in JPanel hinzufügen AWT, Swing, JavaFX & SWT 2
M Im JPanel klickbare Felder hinzufügen AWT, Swing, JavaFX & SWT 2
B Swing Problem: Horizontaler Scrollbalken in JComboBox hinzufügen AWT, Swing, JavaFX & SWT 4
B Buttons entfernen / hinzufügen AWT, Swing, JavaFX & SWT 5
T JTabbedPane - neuen Tab zwischen zwei anderen Tabs hinzufügen AWT, Swing, JavaFX & SWT 2
X JScrollPane zu JTable hinzufügen AWT, Swing, JavaFX & SWT 16
E JFreeChart in einer dynamischen Aufzeichnung neue Serien hinzufügen? AWT, Swing, JavaFX & SWT 7
D JTable Aktualisierung nach hinzufügen eines Datensatzes AWT, Swing, JavaFX & SWT 7
T MouseListener an Ecken von Polygonen hinzufügen AWT, Swing, JavaFX & SWT 5
V Eclipse View Right-Click Menu hinzufügen AWT, Swing, JavaFX & SWT 2
C Swing NullPointerException beim Hinzufügen von Checkboxes in eine ArrayList AWT, Swing, JavaFX & SWT 5
R Eine Instanz von JPanel mehrfach hinzufügen AWT, Swing, JavaFX & SWT 2
F Panels über buttons zu anderen Panels hinzufügen AWT, Swing, JavaFX & SWT 2
E Übergebenem JTree Blätter hinzufügen AWT, Swing, JavaFX & SWT 2
Q AWT Choice ein Zeichen hinzufügen AWT, Swing, JavaFX & SWT 4
R JPanel von JScrollPane entfernen und hinzufügen AWT, Swing, JavaFX & SWT 3
E Adressleiste zum Browserfenster hinzufügen? AWT, Swing, JavaFX & SWT 4
S JPanel in den Container hinzufügen AWT, Swing, JavaFX & SWT 3
T Elemente zu JList dynamisch hinzufügen AWT, Swing, JavaFX & SWT 4
E Swing Verzögerung beim Hinzufügen / Ändern von Swingkomponenten AWT, Swing, JavaFX & SWT 3
H Swing HTML in einem JEditorPane zeilenweise hinzufügen ohne Inhalt jedes Mal neu zu laden AWT, Swing, JavaFX & SWT 4
H Zeile in DefaultTableModel hinzufügen, ProgressBar AWT, Swing, JavaFX & SWT 4
O EventListener verschachtekt hinzufügen AWT, Swing, JavaFX & SWT 3
L SWT Filter zur TreeViewer hinzufügen AWT, Swing, JavaFX & SWT 9
H Ellipse2d zum path hinzufügen AWT, Swing, JavaFX & SWT 4
K JList-Probleme beim Hinzufügen von Elementen AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben