PRATIQUE JAVA 
Modifier le curseur de la souris
 
Changer le viseur pour indiquer un évènement, et créer son propre curseur au besoin, avec les méthodes de AWT. (08/06/2005)
  Forum

Réagissez dans les forums de JDN Développeurs

Faire passer un message auprès des utilisateurs d'un logiciel requiert le plus souvent un minimum de travail : une simple variable du curseur permet d'indiquer un changement d'état en cours, ou de prévenir d'une action. De par son aspect immédiat, informer l'utilisateur de manière graphique est la manière la plus simple de faire passer un message.

Il est bien sûr de modifier le curseur en Java, en usant des pouvoirs combinés de AWT (Abstract Window Toolkit, ensemble de composants graphiques pour Java) et de la gestion d'évènements. Ainsi, pour modifier le curseur au passage de la souris sur une zone :

private class MouseMotionHandler implements MouseMotionListener {
  public void mouseMoved(MouseEvent e) {
    if (find(e.getPoint()) == null) {
      setCursor(Cursor.getDefaultCursor());
      }
    else
      setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR) );
      }
    }
  }


L'objet Cursor propose 15 représentations différentes, parmi lesquelles le viseur (CROSSHAIR_CURSOR), la main (HAND_CURSOR), le sablier (WAIT_CUSOR), des curseurs de déplacement et d'agrandissement...

Il est également possible de se servir de ses propres images (fichier gif transparent 16*16), via le Toolkit :

Toolkit tk = Toolkit.getDefaultToolkit();
Image img = tk.Image("oeil.gif");
Cursor monCurseur = tk.createCustomCursor(img, new Point(16, 16), "mon oeil");


 
Xavier Borderie, JDN Développeurs
 
 
Accueil | Haut de page