Mouse Wheel Listener

Résolu/Fermé
Messages postés
152
Date d'inscription
mardi 4 mai 2004
Statut
Membre
Dernière intervention
8 octobre 2008
-
Messages postés
5367
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
27 janvier 2022
-
Bonjour,

J'ai réussi sans probleme à agir en fonction du mouvement ou des clicks de la souris, par contre je suis incapable d'implementer un objet qui réagit aux rotations de la roulette.

J'ai fouiné dans les codes et forums en vain, qqun peut il m'aider ?

Merci
Olivier

5 réponses

Messages postés
5367
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
27 janvier 2022
111
Salut,

A defaut de savoir vraiment ce que tu veux, voici comment trapper si l'on monte ou descend avec la molette

public void mouseWheelMoved(MouseWheelEvent e) {
        int notches = e.getWheelRotation();
        if (notches < 0) {
             //ici tu scroll ver le haut
        } else {
             //ici tu scroll vers le bas
        }
    }

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
152
Date d'inscription
mardi 4 mai 2004
Statut
Membre
Dernière intervention
8 octobre 2008
1
Mon probleme doit etre en amont...


J'ai créé une class pour essayer de regroupper la gestion de tous les evennements de la souris (la j'ai élagué pour recentrer le probleme)
Avec le code ci-dessous je repere tres bien les "mouseDragged" et "mouseMoved" mais rien sur la roulette...




class MMouse_PBE extends MouseMotionAdapter implements MouseWheelListener{
   public void mouseDragged(MouseEvent e){
      System.out.println("MouseMotionAdapter mouseDragged");
      On_Mouse_Dragged(e);
   }
   public void mouseMoved(MouseEvent e){
      System.out.println("MouseMotionAdapter mouseMoved");
      On_Mouse_Moved(e);
   }
   public void mouseWheelMoved(MouseWheelEvent e){
      System.out.println("MouseMotionAdapter mouseWheelMoved 1 "+e);
      int notches = e.getWheelRotation();
      if (notches < 0) {
         System.out.println("mouse weel up");
      } else {
         System.out.println("mouse weel down");
      }   
      On_Mouse_Wheel(e);
   }
Messages postés
152
Date d'inscription
mardi 4 mai 2004
Statut
Membre
Dernière intervention
8 octobre 2008
1
La question ne doit pas etre si bete que ca vu que tu as raison...en fait je faisait:

MyObject

.addMouseListener(
MyListner); en pensant que, comme mon objet
implements MouseWheelListener, ca devait rouler...

Merci, ca m'apprendra à ne pas réfléchir... je vais me faire une méthode MyListner.add(MyObject) pour coller tous les listner necessaires automatiquement.

Merci encore et désolé pour la pollution des forums avec des questions stupides.
Messages postés
5367
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
27 janvier 2022
111
Salut,

lol c'est pas grave :)

fait attention il y a 3 famille de listener pour la souris :
addMouseListener
    pour les clic, presence est sortie du pointeur de la souris

addMouseMotionListener
    pour les mouvements de la souris et dragg

addMouseWheelListener
    pour la molette

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
5367
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
27 janvier 2022
111
Salut,

Question con mais bon tu ajoute bien le listener ? soit comp.addMouseWheelListener

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA