Hallo zusammen
ich habe folgendes Problem.
Wenn ich den Inhalt einer JComboBox (1) ändere, sollen sich 3 weitere JComboBoxen(2,3,4) ändern.
An der Box (1) hängt ein ActionListener, der die Indexe der Boxen (2,3,4) ändert.
Das klappt.
Die 3 Boxen enthalten Dateinamen von Bildern und sind jeweils mit einem eigenen ActionListener verknüpft.
Wenn eine der Boxen sich ändert, soll auf je einem jPanel ein Bild dargestellt werden, welches sich aus dem Dateinamen des ComboBox Inhaltes ergibt.
Nun kommt es zu dem Problem.
Ich entwickele mit NetBeans auf MAC.
Dort klappt alles genau so wie gewünscht. Exportiere ich das Projekt, und starte es unter Windows passiert folgendes:
Eine Änderung in ComboBox (2,3,4) ändert das Bild auf dem jeweiligen Panel (wie gewollt)
Eine Änderung in ComboBox (1) ändert die Inhalte der Comboboxen(2,3,4), aktualisiert aber nicht die Bilder auf den Panels bzw. das Panel nimmt die die Hintergrundfarbe an und es wird kein Bild gezeigt .
Ich habe geprüft, ob der richtige Listener angesprochen wird.
Meine Vermutung, liegt in der Art und Weise, wie ich die Bilder auf die Panels zeichne.
Versucht habe ich es mit
Dies führt zu keiner Anzeige, auch nicht mit
.
Also bin ich den Umweg gegangen:
ClearRect musste ich nutzen, da sonst jedes Neue Bild auf das vorangegangene gezeichnet wurde.
Nun gehen mir langsame die Ideen aus.
Gibt es noch konstruktive Vorschläge?
Stolle
ich habe folgendes Problem.
Wenn ich den Inhalt einer JComboBox (1) ändere, sollen sich 3 weitere JComboBoxen(2,3,4) ändern.
An der Box (1) hängt ein ActionListener, der die Indexe der Boxen (2,3,4) ändert.
Das klappt.
Die 3 Boxen enthalten Dateinamen von Bildern und sind jeweils mit einem eigenen ActionListener verknüpft.
Wenn eine der Boxen sich ändert, soll auf je einem jPanel ein Bild dargestellt werden, welches sich aus dem Dateinamen des ComboBox Inhaltes ergibt.
Nun kommt es zu dem Problem.
Ich entwickele mit NetBeans auf MAC.
Dort klappt alles genau so wie gewünscht. Exportiere ich das Projekt, und starte es unter Windows passiert folgendes:
Eine Änderung in ComboBox (2,3,4) ändert das Bild auf dem jeweiligen Panel (wie gewollt)
Eine Änderung in ComboBox (1) ändert die Inhalte der Comboboxen(2,3,4), aktualisiert aber nicht die Bilder auf den Panels bzw. das Panel nimmt die die Hintergrundfarbe an und es wird kein Bild gezeigt .
Ich habe geprüft, ob der richtige Listener angesprochen wird.
Meine Vermutung, liegt in der Art und Weise, wie ich die Bilder auf die Panels zeichne.
Versucht habe ich es mit
Java:
this.printPanel.add(new JLabel(new ImageIcon(image)));
Dies führt zu keiner Anzeige, auch nicht mit
Java:
setOpaque(true)
repaint();
updateUI();
Also bin ich den Umweg gegangen:
Java:
Graphics g =this.printPanel.getGraphics();
g.clearRect(0,0,this.printPanel.getWidth(),this.printPanel.getHeight());
g.drawImage(image,0,0,image.getWidth()/2,image.getHeight()/2,null);
this.printPanel.paintComponents(g);
ClearRect musste ich nutzen, da sonst jedes Neue Bild auf das vorangegangene gezeichnet wurde.
Nun gehen mir langsame die Ideen aus.
Gibt es noch konstruktive Vorschläge?
Stolle
Zuletzt bearbeitet: