Drag & Drop sur un JPanel et actions suivant le drop
Bonsoir,
j'ai un gros problème pour gérer mon drop d'un JComponent. Je veux pouvoir effectuer un drag&drop d'un JComponent, plus particulièrement d'un JPanel.
L'idée est la suivante: j'ai plusieurs JPanel en colonne et je veux pouvoir les changer de place.
En me basant sur le code du GhostDrop de Romain Guy. Le drag fonctionne parfaitement mais j'ai du mal à gérer les actions qui suivent mon drop.
Si je reprends le code de Romain Guy, on a:
Code:
1 2 3 4 5 6 7 8 9
| public void ghostDropped(GhostDropEvent e) {
String action = e.getAction();
Point p = getTranslatedPoint(e.getDropLocation());
if (isInTarget(p)) {
JOptionPane.showMessageDialog(this.component, "Action: " + action);
}
}
} |
Si j'ai bien compris, le listener écoute les eventuels drop et lance une action si le drop a bien été effectué dans la cible.
J'ai donc mis comme cible, un JPanel, qui contient l'ensemble de mes JPanels sur lesquels je souhaite agir. A partir de la, je suis un peu perdu...
j'ai pensé à faire des
Code:
target.getComponentAt(p)
pour chopper le component qui se trouve à l'endroit ou j'ai dropé et pouvoir par exemple (pour tester une action quelconque), remove ce component mais ca ne marche pas O_O et je ne comprends vraiment pas
Merci pour vos réponses et bonne soirée