A voir également:
- Evenement de souris en JAVA
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Comment activer le pavé tactile sans souris - Guide
- Java décompiler - Télécharger - Langages
3 réponses
Utilisateur anonyme
11 avril 2011 à 04:03
11 avril 2011 à 04:03
Salut,
Je ne comprend pas comment tu peux récupérer un nombre ou un text en cliquant (ou en survolant) une ligne. A moins que ce soient les coordonnées de cette ligne ?
Dan
Je ne comprend pas comment tu peux récupérer un nombre ou un text en cliquant (ou en survolant) une ligne. A moins que ce soient les coordonnées de cette ligne ?
Dan
malaik5
Messages postés
258
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
28 novembre 2013
33
11 avril 2011 à 11:06
11 avril 2011 à 11:06
Salut,
essaye de regarder du coté des evenements souris: voilà une piste:
MouseEvent ;
public interface MouseListener extends EventListener {
void mouseClicked(MouseEvent e);
void mouseEntered(MouseEvent e);
void mouseExited(MouseEvent e);
void mousePressed(MouseEvent e);
void mouseReleased(MouseEvent e);
}
essaye de regarder du coté des evenements souris: voilà une piste:
MouseEvent ;
public interface MouseListener extends EventListener {
void mouseClicked(MouseEvent e);
void mouseEntered(MouseEvent e);
void mouseExited(MouseEvent e);
void mousePressed(MouseEvent e);
void mouseReleased(MouseEvent e);
}
Ok pourquoi pas, mais sommes-nous certains que LE nombre qu'il veut obtenir en cliquant sur le dessin d'une ligne est par exemple la valeur x OU la valeur y (l'une des coordonnées donc) correspondant au click ou au positionnement du curseur de la souris et peut--être lui conseiller de voir du coté de la classe MouseAdapter...
Utilisateur anonyme
Modifié par danimo le 11/04/2011 à 22:18
Modifié par danimo le 11/04/2011 à 22:18
Salut,
Ce code issu du site http://www.java2s.com/Code/Java/Event/MouseMotionEventmousemoveanddrag.htm
te montrera comme il est difficile d'obtenir les coordonnées exactes d'un dessin (c'est à dire les coordonnées telles que le texte (String) ou le segmentde l'exemple suivant, tels qu'ils ont été créés).
Pour un texte il faut cliquer juste en bas et à gauche du premier caractère, sans toucher ce caractère.
Pour un segment et pour les x/y du point de droite, il faut cliquer juste à droite de la fin du segment (ton cas) et bien entendu pour obtenir x/y du point de gauche, juste à gauche du début.
C'est d'autant plus difficile que la "figure" est fine.
Le code:
Tu peux essayer et me dire ce que tu en penses.
Cordialement,
Dan
Ce code issu du site http://www.java2s.com/Code/Java/Event/MouseMotionEventmousemoveanddrag.htm
te montrera comme il est difficile d'obtenir les coordonnées exactes d'un dessin (c'est à dire les coordonnées telles que le texte (String) ou le segmentde l'exemple suivant, tels qu'ils ont été créés).
Pour un texte il faut cliquer juste en bas et à gauche du premier caractère, sans toucher ce caractère.
Pour un segment et pour les x/y du point de droite, il faut cliquer juste à droite de la fin du segment (ton cas) et bien entendu pour obtenir x/y du point de gauche, juste à gauche du début.
C'est d'autant plus difficile que la "figure" est fine.
Le code:
import java.awt.Color; import java.awt.Graphics; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionListener; import java.awt.Font; import javax.swing.JFrame; import javax.swing.JPanel; import java.awt.Font; public class CoordonneesMouseMotionEventDemo extends JPanel implements MouseMotionListener { private int x, y; private static Font font20; public CoordonneesMouseMotionEventDemo() { addMouseMotionListener(this); setVisible(true); } public void mouseMoved(MouseEvent me) { x = (int) me.getPoint().getX(); y = (int) me.getPoint().getY(); System.out.println("x / y" + x + "/" + y); repaint(); } public void mouseDragged(MouseEvent me) { mouseMoved(me); } public void paint(Graphics g) { // Afficher un texte (String): g.setColor(Color.blue); g.setFont(font20); g.drawString("BONJOUR", 100, 50); // dessiner un segment: g.setColor(Color.black); g.drawLine(150, 80, 200, 80); g.setColor(Color.red); // blue g.fillRect(x, x, 0, 0); //0, 0 pour ne pas afiicher la "trace" mais lister les cordonnées // voir ce que nous obtenons avec par exemple: // g.fillRect(x, x, 4, 4); } public static void main(String[] args) { font20 = new Font("Arial", Font.BOLD, 20); JFrame f = new JFrame(); f.getContentPane().add(new CoordonneesMouseMotionEventDemo()); f.setSize(400, 400); f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); f.setVisible(true); } }
Tu peux essayer et me dire ce que tu en penses.
Cordialement,
Dan