2025-09-04 15:36:55 +02:00
|
|
|
import java.awt.*;
|
|
|
|
import java.awt.event.*;
|
|
|
|
import javax.swing.*;
|
|
|
|
|
|
|
|
public class GestionMoletteSouris implements MouseWheelListener {
|
|
|
|
|
|
|
|
private Composant composant;
|
|
|
|
private Color[] tabCouleurs ;
|
|
|
|
private String[] tabNomsCouleurs;
|
|
|
|
private int positionTabCouleurs1;
|
|
|
|
private int positionTabCouleurs2;
|
|
|
|
|
|
|
|
public GestionMoletteSouris(Composant composant, Color[] tabCouleurs, String[] tabNomsCouleurs) {
|
|
|
|
this.composant = composant;
|
|
|
|
this.tabCouleurs = tabCouleurs;
|
|
|
|
this.tabNomsCouleurs = tabNomsCouleurs;
|
|
|
|
this.positionTabCouleurs1 = 64;
|
|
|
|
this.positionTabCouleurs2 = 16;
|
|
|
|
}
|
|
|
|
|
|
|
|
public void mouseWheelMoved(MouseWheelEvent evenement) {
|
|
|
|
int posX = evenement.getX();
|
|
|
|
int posY = evenement.getY();
|
|
|
|
if (posX < posY) {
|
|
|
|
if (evenement.getWheelRotation() < 0) {
|
|
|
|
this.positionTabCouleurs1++;
|
|
|
|
this.positionTabCouleurs1 = this.positionTabCouleurs1 % this.tabCouleurs.length;
|
|
|
|
this.composant.setCouleur1(this.tabCouleurs[this.positionTabCouleurs1]);
|
|
|
|
this.composant.setNomCouleur1(this.tabNomsCouleurs[this.positionTabCouleurs1]);
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
this.positionTabCouleurs1--;
|
|
|
|
this.positionTabCouleurs1 = this.positionTabCouleurs1 % this.tabCouleurs.length;
|
|
|
|
this.composant.setCouleur1(this.tabCouleurs[this.positionTabCouleurs1]);
|
|
|
|
this.composant.setNomCouleur1(this.tabNomsCouleurs[this.positionTabCouleurs1]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
if (evenement.getWheelRotation() < 0) {
|
|
|
|
this.positionTabCouleurs2++;
|
|
|
|
this.positionTabCouleurs2 = this.positionTabCouleurs2 % this.tabCouleurs.length;
|
|
|
|
this.composant.setCouleur2(this.tabCouleurs[this.positionTabCouleurs2]);
|
|
|
|
this.composant.setNomCouleur2(this.tabNomsCouleurs[this.positionTabCouleurs2]);
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
this.positionTabCouleurs2--;
|
|
|
|
this.positionTabCouleurs2 = this.positionTabCouleurs2 % this.tabCouleurs.length;
|
|
|
|
this.composant.setCouleur2(this.tabCouleurs[this.positionTabCouleurs2]);
|
|
|
|
this.composant.setNomCouleur2(this.tabNomsCouleurs[this.positionTabCouleurs2]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
System.out.println(positionTabCouleurs1 + " / " + positionTabCouleurs2);
|
|
|
|
this.composant.repaint();
|
|
|
|
}
|
|
|
|
}
|