Files

57 lines
1.8 KiB
Java
Raw Permalink Normal View History

2024-03-18 13:54:22 +01:00
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Volume extends JFrame implements MouseWheelListener {
private int value = 5; // Valeur initiale
public Volume() {
setTitle("Volume");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(800, 200);
setLocationRelativeTo(null);
getContentPane().setBackground(Color.BLACK); // Changement de la couleur de fond en noir
// Ajout de la molette de la souris comme écouteur d'événements
addMouseWheelListener(this);
setVisible(true);
}
@Override
public void paint(Graphics g) {
super.paint(g);
int diameter = 50; // Diamètre des disques
int spacing = 10; // Espacement entre les disques
int x = 50; // Position horizontale initiale des disques
// Dessin des disques jaune
for (int i = 0; i < value; i++) {
g.setColor(Color.YELLOW);
g.fillOval(x, 75 - diameter / 2, diameter, diameter);
x += diameter + spacing;
}
// Dessin des disques restant en gris
for (int i = value; i < 10; i++) {
g.setColor(Color.GRAY);
g.fillOval(x, 75 - diameter / 2, diameter, diameter);
x += diameter + spacing;
}
}
@Override
public void mouseWheelMoved(MouseWheelEvent e) {
// Ajustement de la valeur en fonction du mouvement de la molette de la souris
value += e.getWheelRotation();
// Assurer que la valeur reste dans la plage de 0 à 10
value = Math.max(0, Math.min(10, value));
// Redessiner la fenêtre pour afficher la nouvelle valeur
repaint();
}
public static void main(String[] args) {
new Volume();
}
}