Je souhaiterais capter les événements qui sont provoqués dans des sous composant d'un JPanel.
J'ai donc un JPanel "racine" qui contient par exemple deux autres JPanel qui contiennent à leurs tour d'autres JComponent. Le problème est que si j'ajoute un listener sur mon JPanel racine, aucun événement ne lui est transmis car ils sont traités par les sous composants.
Je souhaiterais donc savoir comment arriver à prendre en compte ces événements.

Pour information le but de cette recherche est de faire un autoscroll dans un JScrollPane (contenant le JPanel racine). Lors d'un drag, j'aimerais me déplacer dans le reste de mon JPanel racine. En ajoutant un MouseMotionListener aux composants fils (les fils directs) et en redefinissant la methode mouseDragged() comme il est expliqué dans la javadoc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
public void mouseDragged(MouseEvent e) {
Rectangle r = new Rectangle(e.getX(), e.getY(), 1, 1);
((JPanel)e.getSource()).scrollRectToVisible(r);
j'arrive a faire défiler mon panel si je drag à partir de ces composants. Le problème est que je n'arrive pas à faire de meme avec les "sous sous composants" (composants indirects).