En Java, j'ai un objet qui crée un bouton. A l'intérieur de l'onclicklistener de ce bouton, je veux référencer l'objet qui a créé le bouton.Comment référencer l'objet qui a créé un objet?
Y at-il un moyen simple que je peux faire cela?
En Java, j'ai un objet qui crée un bouton. A l'intérieur de l'onclicklistener de ce bouton, je veux référencer l'objet qui a créé le bouton.Comment référencer l'objet qui a créé un objet?
Y at-il un moyen simple que je peux faire cela?
Cela dépend de la façon dont vous l'avez structuré. En général, les instances n'ont pas de référence à l'instance qui les a créées sauf si vous les transmettez et les stockez quelque part. Toutefois, si vous faites:
public class YourClass {
public void foo() {
JButton b = new JButton();
b.addActionListener(new ActionListener() {
@Override public void actionPerformed(ActionEvent e) {
// Need reference to YourClass here
}
});
}
}
alors vous pouvez vous référer à la YourClass
, en utilisant externe YourClass.this
Quelque chose comme:
class CustomButton extends Button
{
private Object parent = null;
public CustomButton(Object parent) {
super();
this.parent = parent;
}
}
devrait faire l'affaire.
'onclicklistener'? Quelle API utilisez-vous? –