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

AWT/Swing Java Discussion :

déplacer un point et par conséquent une surface


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 151
    Par défaut déplacer un point et par conséquent une surface
    Salut à tous,
    je débute encore en java swing
    et je trouve toujours des problèmes avec les méthodes mouseDraged, mouseclicked, mouse...

    alors voilà je vous explique: j'ai des points liés par des lignes
    je veux essayer de selectionner un point par la souris et le deplacer en modifiant les lignes qui sont liés à ce Point sélectionné
    voilà un bout de mon code mais ça marche pas et j'ignore l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    public void mousePressed(MouseEvent ev){
    	float x=ev.getX();
    	float y=ev.getY();
    	Point M=new Point(x, y);
    	drag=M.appartenir (tousLesPoints);  
             // tousLesPoints un vecteur  contenant tous les points 
            // la méthode appartenir pour verifier si M appartienne au tousLasPoints
            // si oui retourner l'indice de ce Point dans le vector 
    	contenu.repaint();		
    }
     
     
    public void mouseDragged(MouseEvent ev) {
    	float x=ev.getX();
    	float y=ev.getY();
    	if (drag!=-1){
    		Point M=new Point(x, y, 0);
    		tousLesPoints.remove(drag);
    		tousLesPoints.add(drag,M);
    		creerSurfacePoints();
    		etat =1;					
    	}	
    	contenu.repaint();		
    }
     
     
    public void mouseReleased(MouseEvent ev){
    	contenu.repaint();
    }

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 179
    Par défaut
    Citation Envoyé par azertyuio Voir le message
    voilà un bout de mon code mais ça marche pas et j'ignore l'erreur
    Je ne crois pas trop m'avancer en te disant que personne ne pourra t'aider avec si peu d'informations. On ne sait pas ce qui ne "marche pas" et dans le code que tu postes, il y a des fonctions à toi dont on ne sait pas ce qu'elles font. Le code de tes MouseListener est-il au moins appelé ?

    Fred.

  3. #3
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 151
    Par défaut
    Citation Envoyé par kwxyz Voir le message
    Je ne crois pas trop m'avancer en te disant que personne ne pourra t'aider avec si peu d'informations. On ne sait pas ce qui ne "marche pas" et dans le code que tu postes, il y a des fonctions à toi dont on ne sait pas ce qu'elles font. Le code de tes MouseListener est-il au moins appelé ?

    Fred.
    désolée de ne pas être plus claire !!
    c'est vrai j'utilise des méthodes perso mais j'ai essayer de mettre des commentaires.
    j'ai implémenté l'interface MouseListener
    le problème : j'ai une surface de Bézier qui est créée à partir des points de contrôles.
    ce que je cherche est le faite de déplacer un point (de ces points de contrôles ) toute la surface change.
    Donc je dois pouvoir déplacer le point sélectionné, tout en modifiant la surface, lorsqu'on bouge la souris avec un bouton maintenu.

    Franchement j'arrive pas à bien utiliser les méthodes mouseDragged, mousePressed, mouseClicked et mouseReleased, mouseUp, mouseMoved,...
    et je vois pas la différence entre certaines méthodes
    comme mouseDown, mouseCliked et mousePressed

    merci

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 179
    Par défaut
    Mais tu ne dis pas ce qui ne fonctionne pas. Il se passe quelque chose ou rien du tout ?
    Je dis ça parce que je ne sais même pas si ton code est exécuté.

    mouseDragged et mouseMoved sont des fonctions de MouseMotionListener contrairement à mousePressed, mouseClicked et mouseReleased qui proviennent de l'interface MouseListener. Tu dois donc avoir quelque part quelque chose qui ressemble à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    composant.addMouseListener(listener);
    composant.addMouseMotionListener(listener);
    Quant à quoi elles servent, cherche un peu sur le net, il y a beaucoup d'exemples assez clairs démontrant leur utilisation.

    Fred.

  5. #5
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2009
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2009
    Messages : 151
    Par défaut
    Citation Envoyé par kwxyz Voir le message
    Mais tu ne dis pas ce qui ne fonctionne pas. Il se passe quelque chose ou rien du tout ?
    Je dis ça parce que je ne sais même pas si ton code est exécuté.
    il ne se passe rien du tout
    j'arrive pas à selectionner un point
    et par la suite j'arrive pas à le déplacer

    Citation Envoyé par kwxyz Voir le message
    mouseDragged et mouseMoved sont des fonctions de MouseMotionListener contrairement à mousePressed, mouseClicked et mouseReleased qui proviennent de l'interface MouseListener. Tu dois donc avoir quelque part quelque chose qui ressemble à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    composant.addMouseListener(listener);
    composant.addMouseMotionListener(listener);
    Fred.
    oui oui j'ai fait ces 2 lignes
    composant.addMouseListener(listener);
    composant.addMouseMotionListener(listener);

    enfaite mon code fonctionne trees bien mais j'ai un menu, des boutons, et tout mais j'ai voulu ajouter les méthodes des souris pour donner un plus à mon code.

  6. #6
    Membre actif
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Décembre 2008
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2008
    Messages : 63
    Par défaut
    avant meme deplacer un point et/ou une surface il faut s'assurer que ce point existe dans ta matrice ou ton tableau sinon tu clique sur le vide

Discussions similaires

  1. Distribution de point à distance uniforme dans une surface carrée
    Par Gannon dans le forum Algorithmes et structures de données
    Réponses: 12
    Dernier message: 17/06/2013, 16h32
  2. Déplacer des points d'une ligne
    Par PadawanDuDelphi dans le forum Delphi
    Réponses: 2
    Dernier message: 26/09/2006, 10h57
  3. Réponses: 5
    Dernier message: 30/05/2006, 14h04
  4. Réponses: 3
    Dernier message: 31/10/2005, 16h47
  5. [MATH] Point par rapport à une droite
    Par teska dans le forum Mathématiques
    Réponses: 6
    Dernier message: 14/05/2003, 16h11

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