Probleme de gestion de la souris...

Probleme de gestion de la souris... - Java - Programmation

Marsh Posté le 19-11-2004 à 15:39:06    

Bonjour,
voila j'ai un programme ou plutot une application qui doit réagir aux clics de l'utilisateur...ceci serait bien entendu facile si je pouvais utiliser les boutons mais je ne peux pas...
Donc je dois lancer une action lorsque l'utilisateur clique à un endroit précis de la fenetre  
par exemple, (x>=150 && x<=200) && (y>=50 && y<=75) l'appli devrait me lancer l'ouverture d'une autre fenetre...
sachant que je suis dans une Frame, est ce que quelqu'un pourrait m'aider à effectuer ce travail ?  :jap:  
 
Attention ! Bien entendu je ne demande pas que l'on me fasse le travail comme on pourrait le croire mais plutot de m'aider en me disant les concepts que je dois utiliser et en me donnant peut-être des bouts de codes pour moi mieux comprendre...rien de plus !  :non:  
 
Merci d'avance !  :bounce:


Message édité par niouts le 19-11-2004 à 15:53:04
Reply

Marsh Posté le 19-11-2004 à 15:39:06   

Reply

Marsh Posté le 19-11-2004 à 16:53:10    

tu rajoute un MouseListener, qui te genere des MouseEvent
 
et les MouseEvent ont des methides getPoint , getX, getY , meme si a mon avis mieux vaut passer par des boutons losque c'est possible ( sinon, attention aux redimensionnement de fenetres )

Reply

Marsh Posté le 19-11-2004 à 17:10:21    

Citation :

tu rajoute un MouseListener, qui te genere des MouseEvent


 
Merci pour les infos...
lorsque j'ai compilé il m'a demandé d'insérer ces méthodes :
 

Code :
  1. public void mouseReleased (MouseEvent e) {
  2. }
  3. public void mousePressed (MouseEvent e) {
  4. }
  5. public void mouseExited (MouseEvent e) {
  6. }
  7. public void mouseEntered (MouseEvent e) {
  8. }
  9. public void mouseClicked (MouseEvent e) {
  10. }


 
A quoi servent elles svp ?  Aparemment je ne peux pas faire sans les mettre dans le code sous peine d'erreurs  la compilation...
Merci ca me ferait gagner du temps plutot que de chercher un peu partout sur internet  :D


Message édité par niouts le 19-11-2004 à 17:10:46
Reply

Marsh Posté le 19-11-2004 à 17:15:13    

Après une petite recherche quand même, j'ai remarqué que l'on ne pouvais pas s'en passer et qu'elle servent à gérer les actions de la souris bien entendu mais ma question était mal formé juste avant :  
a quoi correspondent chaque méthode ?
donc j'ai poursuivi mes recherches et j'ai trouvé donc merci bien pour les points de départs que tu m'as donné fb@alphalog :jap:    
Merci encore !


Message édité par niouts le 19-11-2004 à 17:23:42
Reply

Marsh Posté le 19-11-2004 à 17:25:23    

mouselistener est une interface , il faut donc faire qq chose du genre :  
 
public class GestionSouris implements MouseListener{
 
}
 
mousereleased : relacher un bouton de la souris
mousepressed : appuyer sur un bouton
public void mouseExited (MouseEvent e) : souris qui sors du composant  
public void mouseEntered (MouseEvent e) : souris qui entre
public void mouseClicked (MouseEvent e) : click ( presse puis relaché  
 
bref, c comme le port salut , c'est ecrit dessus :D

Reply

Marsh Posté le 19-11-2004 à 17:37:30    

Merci  :jap:  
sinon je viens de tester et je comprends pas pourquoi cela ne marche pas...

Code :
  1. public void mouseClicked (MouseEvent e) {     
  2. System.out.println("X="+e.getX()+" et Y="+e.getY());
  3. }


Logiquement il devrait m'indiquer les coordonnées de la souris à chaque clic non ?? si oui ben il ne le fait pas  :heink:

Reply

Marsh Posté le 19-11-2004 à 17:51:00    

tu as bien fait , dans la construcition de ta frame  
addMouseListener(new GestionSouris ()) ?

Reply

Marsh Posté le 19-11-2004 à 17:52:54    

euh...
non :D
j'écris cette instruction telle quelle ?
je sais j'ai du mal mais bon je débute en Java ...

Reply

Marsh Posté le 19-11-2004 à 17:54:23    

aïe. essaye de trouver un tutoriel sur la gestion des évenements, ca t'aidera plus que de copier 2/3 bouts de code

Reply

Marsh Posté le 19-11-2004 à 17:57:14    

en fait je voulais dire que je ne sais pas quoi mettre a la place de
GestionSouris()...
voila


Message édité par niouts le 19-11-2004 à 17:58:24
Reply

Marsh Posté le 19-11-2004 à 17:57:14   

Reply

Marsh Posté le 19-11-2004 à 18:07:24    

A yé !
Bon ben j'ai enfin trouvé...j'ai cherché dans des bouquins ce que je pouvais mettre en étant un peu logique et j'avoue je me suis creusé la tête plutot que d'attendre...
donc par contre dites moi ce que vous en pensez mais j'ai fait ca :

Code :
  1. addMouseListener(new MouseAdapter () {
  2.         public void mousePressed (MouseEvent e) {
  3.            System.out.println("X="+e.getX()+" Y="+e.getY());   
  4.          }
  5.       }
  6.    );


Voila
Merci de votre aide  :jap:  
 :bounce:

Reply

Marsh Posté le 19-11-2004 à 18:33:27    

si tu as peu de code a mettre a la place du System.out.println, c'est la bonne solution.
 
Si tu en as plus, faire un handler a part sera peut-etre plus propre

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed