IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NetBeans Java Discussion :

Drag&Drop dans netbeans visual api


Sujet :

NetBeans Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 41
    Par défaut Drag&Drop dans netbeans visual api
    Salut, tout le monde, je suis en train d'utiliser netbeans visual api et j'ai rencontré une difficulté:

    J'ai des widgets sur une scène comme un arbre . Ce que je désire à faire c'est de pouvoir effectuer un changement de noeud-père de façon drag&drop.

    J'ai utilisé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Widget.getActions().addAction(ActionFactory.createAcceptAction(new AcceptProvider(){
            public ConnectorState isAcceptable(Widget arg0, Point arg1, Transferable arg2) {
                System.out.println("isAcceptable"+(++serial)+"   "+arg0);
                return ConnectorState.ACCEPT;
            }
     
            public void accept(Widget arg0, Point arg1, Transferable arg2) {
                System.out.println("accept"+(++serial)+"   "+arg0);
            }))
    Mais il a l'air que l'AcceptAction n'est jamais invoqué. Quelqu'un a une idée?

    Merci à l'avance!

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 41
    Par défaut
    En fait, visual api ne supporte pas DnD par défaut.
    http://bits.netbeans.org/dev/javadoc...e-summary.html

    Mais en surchargant MoveAction, j'ai réalisé le DnD.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    @Override
            public State mouseReleased (Widget widget, WidgetMouseEvent event) {
                boolean state = move (widget, event.getPoint ());
                if (state) {
                    movingWidget = null;
                    provider.movementFinished (widget);
                }
                
                DndHandler.getInstance().process(widget, event);
                
                return state ? State.CONSUMED : State.REJECTED;
            }
    Le parametre est l'objet 'dragged'. On peut trouver l'objet cible en cherchant le widget positionné à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    event.getPoint().translate((int)widget.getLocation().getX(), (int)widget.getLocation().getY())
    Ensuite on peut extraire les données depuis l'objet dragged et affecter à l'objet cible. Voila!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de Drag'n'Drop dans un SWF embarqué
    Par Jay00 dans le forum Flex
    Réponses: 5
    Dernier message: 13/08/2007, 14h26
  2. Drag and drop dans un input
    Par kriekbellevue dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/12/2006, 20h55
  3. [VB.net] Drag and drop dans une Treeview
    Par gégécap dans le forum Windows Forms
    Réponses: 2
    Dernier message: 19/10/2006, 10h05
  4. [VB.NET]Drag and Drop dans une Listview
    Par gégécap dans le forum Windows Forms
    Réponses: 5
    Dernier message: 23/08/2006, 18h41
  5. Drag and drop dans un TTreeView
    Par BigBenQ dans le forum C++Builder
    Réponses: 3
    Dernier message: 07/10/2005, 14h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo