Mouse Wheel Listener [Résolu/Fermé]

Messages postés
152
Date d'inscription
mardi 4 mai 2004
Dernière intervention
8 octobre 2008
- 11 sept. 2006 à 16:56 - Dernière réponse :
Messages postés
5293
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
19 novembre 2018
- 12 sept. 2006 à 10:38
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
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
5293
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
19 novembre 2018
11 sept. 2006 à 18:01
1
Merci
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

Merci Twinuts 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de Twinuts
Messages postés
152
Date d'inscription
mardi 4 mai 2004
Dernière intervention
8 octobre 2008
12 sept. 2006 à 10:00
0
Merci
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);
   }
Commenter la réponse de omcougar
Messages postés
152
Date d'inscription
mardi 4 mai 2004
Dernière intervention
8 octobre 2008
12 sept. 2006 à 10:30
0
Merci
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.
Commenter la réponse de omcougar
Messages postés
5293
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
19 novembre 2018
12 sept. 2006 à 10:38
0
Merci
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
Commenter la réponse de Twinuts
Messages postés
5293
Date d'inscription
dimanche 4 mai 2003
Dernière intervention
19 novembre 2018
12 sept. 2006 à 10:15
-2
Merci
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
Commenter la réponse de Twinuts

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.