J'ai une classe JPanel appelée Board avec une sous-classe statique, MouseHanlder, qui suit la position de la souris le long de l'écouteur approprié dans Board. Ma classe Board a des champs pointerX et pointerY. Comment puis-je passer le e.getX() et e.getY() de la sous-classe MouseHandler à sa super classe JPanel? J'ai essayé avec des getters, setters, super, et ne peux pas obtenir le transfert de données entre la sous-classe et la classe parente. Je suis certain que c'est un problème de concept, mais je suis bloqué.Passage de la position du pointeur sur un objet en Java
Merci!
En raison de la demande générale, du code. Ce code est sans atempt de passage:
public class Board extends JPanel {
int x; // Mouse pointer fields.
int y;
public Board() {
blah blah
MouseHandler handler = new MouseHandler();
addMouseMotionListener(handler);
}
static class MouseHandler implements MouseMotionListener {
int pointerX;
int pointerY;
public void mouseMoved(MouseEvent e) {
i'd like to do something like:
super.x = e.getX();
super.x = e.getY();
or
Board.setX() = e.getX(); // Missing setters below, this is just an example.
Board.setX() = e.getY();
}
}
}
Pouvez-vous poster le code pertinent? Cela rendra beaucoup plus facile de répondre à votre question. –
Vous avez une classe MouseHandler qui étend un JPanel !! ??, hmmm peut-être que vous voulez dire classe interne ... – ultrajohn