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 :

Récupérer la position d'une ligne dans Netbeans


Sujet :

NetBeans Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2013
    Messages : 46
    Points : 39
    Points
    39
    Par défaut Récupérer la position d'une ligne dans Netbeans
    Bonjour à tous,

    Je souhaite afficher un JPopupMenu avec des JMenuItem à l'intérieur, et j'aimerais l'afficher juste au-dessus d'une ligne particulière (pour proposer des actions en cas d'erreur(s) dans le code).

    Malheureusement, je ne vois pas comment faire pour récupérer la position d'une ligne (en x et y).

    Quelqu'un saurait m'indiquer comment faire ?

    Merci d'avance pour votre aide.

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    Bah il faudrait nous dire ce que tu appelles un ligne.

    Tu parles de table, de liste, d'autres composants ?
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2013
    Messages : 46
    Points : 39
    Points
    39
    Par défaut
    Eh bien, je parle d'une simple ligne de code dans netbeans.
    J'ai testé avec Line, mais il n'a pas de getX/getY. De même pour Annotation.
    Voilà un bout de code pour mieux situer le tout :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    // En cas de modification du fichier, retrouve le nouveau numéro de ligne sur laquelle
    // se trouvait originellement l'erreur
    final Line line = lineSet.getOriginal(numLine);
    Line.Part linePart = line.createPart(7, 5);
     
     
    // Une annotation est créée pour chaque erreur. Elle comprend un texte avec l'erreur
    final Annotation annotation = new SomeAnnotation("My annotation");
    // Elle s'affiche
    annotation.attach(linePart);
    // On lui ajoute un listener dans le cas où l'utilisateur clique dessus
    annotation.addPropertyChangeListener(myPropertyChangeListener);

  4. #4
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2013
    Messages : 46
    Points : 39
    Points
    39
    Par défaut
    J'ai essayé d'une autre façon en récupérant le "Mode éditeur", puis en rajoutant un MouseListener sur le TopComponent qui lui est attribué :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    TopComponent tp[];
    // Je récupère le mode "éditeur" dans lequel se trouve le TopComponent que je recherche
    Mode m = WindowManager.getDefault().findMode("editor");
     
    // Il y a 7 TopComponents, j'ai déjà fait un foreach pour vérifier lequel m'intéressais
    tp = m.getTopComponents();
    tp[1].addMouseListener(myMouseListener);
    Le problème, c'est que j'ai l'impression qu'il rentre et qu'il ressort aussitôt de mon Listener. J'ai mis un system.out, dans le constructeur et dans les MouseClicked etc. mais il n'y a que le system.out du constructeur qui apparaît.

    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    public class MyMouseListener implements MouseListener{
        // Coordonnées du clique de la souris
        private int x;
        private int y;
     
        public MyMouseListener() {
            System.out.println("mouse listener constructeur");
        }
     
        @Override
        public void mouseClicked(MouseEvent e) {
            this.x = e.getXOnScreen();
            this.y = e.getYOnScreen();
            System.out.println("Abscisse : " + this.x);
            System.out.println("Ordonnée : " + this.y);
        }
     
        @Override
        public void mousePressed(MouseEvent e) {
            this.x = e.getXOnScreen();
            this.y = e.getYOnScreen();
            System.out.println("Abscisse : " + this.x);
            System.out.println("Ordonnée : " + this.y);
        }
     
        @Override
        public void mouseReleased(MouseEvent e) {
            System.out.println("mouse released");
        }
     
        @Override
        public void mouseEntered(MouseEvent e) {
            System.out.println("mouse entered");
        }
     
        @Override
        public void mouseExited(MouseEvent e) {
     
        }
    }
    Pour ceux qui se demandent ce qu'est un mode :




    Merci d'avance.

Discussions similaires

  1. Réponses: 1
    Dernier message: 10/04/2010, 07h16
  2. Réponses: 1
    Dernier message: 27/10/2009, 21h48
  3. Récupérer les attributs d'une ligne dans un Datagrid
    Par siro1 dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 23/09/2009, 17h29
  4. [SQL] Connaitre la position d'une ligne dans un classement
    Par Invité dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 27/02/2007, 09h45
  5. Récupérer la valeur d'une ligne dans une procédure stockée
    Par mobscene dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 07/12/2006, 19h29

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