big update

This commit is contained in:
EmmanuelTiamzon
2025-10-08 16:39:06 +02:00
parent da05a19bd9
commit 1e25b6a3ae
36 changed files with 222 additions and 93 deletions

Binary file not shown.

View File

@@ -0,0 +1,19 @@
import java.awt.*;
import javax.swing.*;
public class GFenetre extends JFrame {
public GFenetre() {
super("Galerie");
this.setSize(1000, 600);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(new GridLayout(1,1));
JLabel imgJLabel = new JLabel(new ImageIcon("MICHEL.gif"));
this.add(imgJLabel, BorderLayout.CENTER);
this.add(imgJLabel);
this.addMouseListener(new GestionSouris(imgJLabel ,this));
}
}

Binary file not shown.

View File

@@ -0,0 +1,52 @@
import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseListener;
import java.awt.event.MouseEvent;
public class GestionSouris implements MouseListener {
private JLabel img;
private String[] images;
private int actuel;
private GFenetre gfenetre;
public GestionSouris(JLabel img, GFenetre gfenetre) {
this.img = img;
this.gfenetre = gfenetre;
String[] temp = {
"MICHEL.gif",
"image1.jpeg",
"imag2.jpeg"
};
this.images = temp;
this.actuel = 0;
}
@Override
public void mouseClicked(MouseEvent evenement) {
if (evenement.getX() < this.gfenetre.getWidth()/2) {
this.actuel--;
if (this.actuel == -1) {
this.actuel = 3;
}
}
else {
this.actuel++;
if (this.actuel == 4) {
this.actuel = 0;
}
}
this.gfenetre.getContentPane().removeAll();
this.gfenetre.add(new JLabel(new ImageIcon(this.images[this.actuel])));
this.gfenetre.revalidate();
this.gfenetre.repaint();
}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 MiB

Binary file not shown.

View File

@@ -3,10 +3,6 @@ import javax.swing.*;
public class Main {
public static void main(String[] args) {
ImageIcon[] images = {new ImageIcon("image1.jpeg"), new ImageIcon("image2.jpeg"), new ImageIcon("MICHEL.gif")};
GModel model = new GModel(images);
GFenetre fenetre = new GFenetre();
fenetre.setVisible(true);

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

View File

@@ -1,26 +0,0 @@
import java.awt.*;
import javax.swing.*;
public class GFenetre extends JFrame {
private JLabel imgJLabel;
public GFenetre() {
super("Galerie");
this.setSize(1000, 600);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.imgJLabel = new JLabel();
this.add(this.imgJLabel, BorderLayout.CENTER);
}
public void afficherImage(ImageIcon image) {
this.imgJLabel.setIcon(image);
}
public JLabel getImageLabel() {
return this.imgJLabel;
}
}

View File

@@ -1,23 +0,0 @@
import javax.swing.*;
public class GModel {
private ImageIcon[] imgCarousel;
private int index;
public GModel(ImageIcon[] imgCarousel) {
this.imgCarousel = imgCarousel;
this.index = 0;
}
public ImageIcon getImageActuel() {
return this.imgCarousel[this.index];
}
public void imageSuivante() {
this.index = (this.index + 1) % imgCarousel.length;
}
public void imagePrecedente() {
this.index = (this.index - 1 + this.imgCarousel.length) % imgCarousel.length;
}
}

View File

@@ -1,40 +0,0 @@
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class GestionSouris implements MouseListener {
private GModel model;
private GFenetre gfenetre;
public GestionSouris(GModel model, GFenetre gfenetre) {
this.model = model;
this.gfenetre = gfenetre;
this.gfenetre.getImageLabel().addMouseListener(this);
this.gfenetre.afficherImage(this.model.getImageActuel());
}
@Override
public void mouseClicked(MouseEvent e) {
int x = e.getX();
int width = this.gfenetre.getImageLabel().getWidth();
if(x < width / 2) {
this.model.imagePrecedente();
} else {
this.model.imageSuivante();
}
this.gfenetre.remove(this.gfenetre.getImageLabel());
this.gfenetre.getImageLabel().setIcon(this.model.getImageActuel());
this.gfenetre.add(this.gfenetre.getImageLabel(), BorderLayout.CENTER);
this.gfenetre.revalidate();
this.gfenetre.repaint();
}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
}