Pour qu'une applet réponde aux clics de souris, vous devez implémenter une interface « MouseListener » dans votre classe d'applet. Cette interface définit plusieurs méthodes appelées lorsque différents événements de souris se produisent. Voici comment procéder en Java (en supposant que vous utilisez AWT ou Swing) :
```Java
importer java.applet.Applet ;
importer java.awt.* ;
importer java.awt.event.* ;
classe publique ClickableApplet étend Applet implémente MouseListener {
public void init() {
// Ajout d'un MouseListener à l'applet elle-même
addMouseListener(this);
}
// Méthodes MouseListener
@Outrepasser
public void mouseClicked (MouseEvent e) {
// Cette méthode est appelée lorsqu'un bouton de la souris est cliqué (enfoncé et relâché)
// Récupère les coordonnées x et y du clic
int x =e.getX();
int y =e.getY();
System.out.println("La souris a cliqué sur :(" + x + ", " + y + ")");
// Ajoutez votre logique de gestion des clics ici. Par exemple:
repeindre(); // Pour redessiner l'applet après un clic
}
@Outrepasser
public void mousePressed (MouseEvent e) {
// Cette méthode est appelée lorsqu'un bouton de la souris est enfoncé
// Vous pouvez utiliser ceci pour détecter le début d'une opération de glisser
}
@Outrepasser
public void mouseReleased (MouseEvent e) {
// Cette méthode est appelée lorsqu'un bouton de la souris est relâché
// Vous pouvez utiliser ceci pour détecter la fin d'une opération de glisser
}
@Outrepasser
public void mouseEntered (MouseEvent e) {
// Cette méthode est appelée lorsque la souris entre dans la zone de l'applet
}
@Outrepasser
public void mouseExited (MouseEvent e) {
// Cette méthode est appelée lorsque la souris quitte la zone de l'applet
}
//Facultatif :vous pouvez remplacer paint() pour dessiner quelque chose dans l'applet
@Outrepasser
peinture vide public (Graphiques g) {
g.drawString("Cliquez sur moi !", 50, 50);
}
}
```
Explication :
1. `implements MouseListener` : Cette ligne permet à votre classe d'applet d'implémenter l'interface `MouseListener`. Cela signifie que vous devez fournir des implémentations pour toutes les méthodes définies dans cette interface.
2. `addMouseListener(this);` : Cette ligne ajoute l'applet elle-même en tant qu'écouteur des événements de souris. Parce que l'applet implémente `MouseListener`, elle peut écouter ses propres événements de souris. Ceci est ajouté dans la méthode `init()`, qui est appelée lorsque l'applet est initialisée.
3. Méthodes `MouseListener` : Les six méthodes (`mouseClicked`, `mousePressed`, `mouseReleased`, `mouseEntered`, `mouseExited`) sont les méthodes du gestionnaire d'événements. Vous mettez votre code pour gérer les événements de la souris dans ces méthodes. `mouseClicked` est le plus pertinent pour une gestion simple des clics.
4. `getX()` et `getY()` : Ces méthodes, appelées sur l'objet `MouseEvent` (`e`), fournissent les coordonnées x et y du clic de souris par rapport au système de coordonnées de l'applet.
5. `repaint()` : Cette méthode est utilisée pour redessiner l'applet. Si vous modifiez l'apparence de l'applet en fonction d'un clic (par exemple, en changeant le texte ou en dessinant quelque chose), vous devez appeler `repaint()` pour actualiser l'affichage.
N'oubliez pas que les applets sont largement obsolètes et doivent généralement être évitées pour les nouveaux projets en raison de problèmes de sécurité et du déclin de la prise en charge des navigateurs. Si vous démarrez un nouveau projet, envisagez d'utiliser des technologies Web plus modernes telles que JavaScript, HTML et CSS. Cet exemple est principalement destiné à des fins éducatives pour démontrer comment les clics de souris sont gérés dans le contexte d'applet désormais largement obsolète.
|