MariusMeier
Mitglied
Hallo zusammen
Ich habe folgenden Code geschrieben:
Von der Komponente RComp instanziere ich nun ein Objekt und registriere darauf einen MouseListener().
Das problem ist, dass wenn ich auf Bild res2 klicke erscheint die ganze Zeit in der Konsole das ich res1 angeklickt habe..... wie kann ich meine eigenen instanzierten JComponents beim EventHandling voneinander unterscheiden dass sie die richtigen Actionen ausführen?
MFG Marius Meier
Ich habe folgenden Code geschrieben:
Code:
public class RComp extends JComponent {
Image resistor = null;
double value = 0;
double percent = 0;
public RComp(char vRcomp,double value,double percent,int x,int y) {
this.value = value;
this.percent = percent;
resistor = getToolkit().getImage("D:/Work_Java/Projekt2/src/ch/fhnw/NikRCKas1/GUI/VResistor.jpg");
this.setBounds(x,y,100,100); // 123,123 min. auf Bildgröße ändern
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(resistor, 0, 0, this);
}
}
Von der Komponente RComp instanziere ich nun ein Objekt und registriere darauf einen MouseListener().
private class Leinwand extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
RComp res1 = new RComp('v',100,1,100,100);
RComp res2 = new RComp('h',100,1,150,150);
res1.addMouseListener(new GUIMouseListener("res1"));
res2.addMouseListener(new GUIMouseListener("res2"));
setLayout(null);
this.add(res1);
this.add(res2);
}
}
class GUIMouseListener implements MouseListener {
private String actualEvent;
public GUIMouseListener(String actualEvent) {
this.actualEvent = actualEvent;
}
public void mouseReleased(MouseEvent e) {
if(actualEvent == "res1") {
System.out.println("Res1");
}
if(actualEvent == "res2") {
System.out.println("Res2");
}
}
public void mousePressed(MouseEvent e) {
}
public void mouseClicked(MouseEvent e) {
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
}
Das problem ist, dass wenn ich auf Bild res2 klicke erscheint die ganze Zeit in der Konsole das ich res1 angeklickt habe..... wie kann ich meine eigenen instanzierten JComponents beim EventHandling voneinander unterscheiden dass sie die richtigen Actionen ausführen?
MFG Marius Meier