wie der Titel schon sagt habe ich ein Array von 20JLabels jedes JLabel bekommt ein PropertyChangeListener, das funktioniert auch soweit... nun ändert sich das JLabel und gibt auch aus, das es sich ändert ,genau so wie ich will.
Aber darauf soll sich nun das Bild was auf dem JLabel liegt per setIcon() ändern doch ich bekomme nicht raus welches JLabel sich da überhaupt geändert hat...
hier mein code:
makierung <-- hier ist mein problem (i) geht natürlich nicht, da i hier nicht zu erreichen ist, aber this.setIcon würde auch nicht funktionieren, da this ja der Listener ist und nicht das JLabel was unter dem Listener steckt. Mit aufGrund[0].setIcon dort funktioniert es einwand frei, doch ich will ja immer das passende JLabel bemalen und nicht das 1ste...
hoffe ihr wisst schnellen rat.
Aber darauf soll sich nun das Bild was auf dem JLabel liegt per setIcon() ändern doch ich bekomme nicht raus welches JLabel sich da überhaupt geändert hat...
hier mein code:
Code:
for(int i=0;i<20;i++){
aufGrund[i] = new JLabel();
aufGrund[i].setTransferHandler(new TransferHandler("text"));
aufGrund[i].addPropertyChangeListener(new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent event) {
if(event.getOldValue()!=null){
if(!event.getOldValue().equals(event.getNewValue())){
if(!event.getNewValue().toString().startsWith("uhrenvorschau.IconPainter")){
aufGrund[i].setIcon(new IconPainter(getImage(event.getNewValue().toString()),-11,0,0,0,0)); //makierung
}}}
}});
this.add(aufGrund[i]);}
makierung <-- hier ist mein problem (i) geht natürlich nicht, da i hier nicht zu erreichen ist, aber this.setIcon würde auch nicht funktionieren, da this ja der Listener ist und nicht das JLabel was unter dem Listener steckt. Mit aufGrund[0].setIcon dort funktioniert es einwand frei, doch ich will ja immer das passende JLabel bemalen und nicht das 1ste...
hoffe ihr wisst schnellen rat.