Bonsoir à tous,
j'ai vraiment besoin de votre aide.
Je suis débutante en Java et je fais actuellement face à un problème. En fait j'ai créé une fonction pour lecture d'un diaporama cependant quand je clique sur le bouton, toutes les images ne s'affichent pas sauf la dernière, j'ignore pourquoi. Aidez moi s'il vous plaît.
Voici mon code pas entier mais les parties concernées:
actionperformed
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 public class Essai implements ActionListener { /** * @param args the command line arguments */ JButton button1; JButton button2; JButton button3; JFrame frame; JFrame diapo; JLabel label; JLabel labelDiapo; static ImageIcon img; static int inc = 0; static File repertoire = new File("C:\\Users\\Invité\\Desktop\\diap"); static String TabImage[] = repertoire.list(); static Dimension tailleEcran = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); static int hauteur = (int)tailleEcran.getHeight(); static int largeur = (int)tailleEcran.getWidth(); public static void main(String[] args) { // TODO code application logic here Essai e = new Essai(); e.frame = new JFrame("Diaporama"); e.button1 = new JButton("Précédent"); e.button2 = new JButton("Suivant"); e.button3 = new JButton("Lancer le Diaporama"); e.img = new ImageIcon("C:\\Users\\Invité\\Desktop\\diap\\" + TabImage[inc]); e.label = new JLabel("", new ImageIcon(img.getImage().getScaledInstance(500, 360,Image.SCALE_DEFAULT)), JLabel.CENTER ); e.button1.addActionListener(e); e.button2.addActionListener(e); e.button3.addActionListener(e); e.frame.add(e.button1, BorderLayout.EAST); e.frame.add(e.button2, BorderLayout.WEST); e.frame.add(e.button3, BorderLayout.SOUTH); e.frame.add(e.label); e.frame.setSize(600, 400); e.frame.setVisible(true); //e.Diaporama(frame); }
La fonction Diaporama en question
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 public void actionPerformed(ActionEvent event) { if (event.getSource() == button1){ inc--; if (inc > TabImage.length-1 ){ inc = 0; }else if (inc < 0){ inc = TabImage.length-1 ; } defile(inc); } else if (event.getSource() == button2) { inc++; if (inc > TabImage.length-1 ){ inc = 0; }else if (inc < 0){ inc = TabImage.length-1 ; } defile(inc); } else if (event.getSource() == button3){ diapo = new JFrame("Diaporama Plein Ecran"); labelDiapo = new JLabel("", new ImageIcon("C:\\Users\\Invité\\Desktop\\diap\\aston.jpg" ),JLabel.CENTER ); diapo.add(labelDiapo); diaporama(); } }
Je vous remercie de votre aide!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 public void diaporama(){ int i = 0; while (i<TabImage.length){ ImageIcon img1 = new ImageIcon("C:\\Users\\Invité\\Desktop\\diap\\" + TabImage[i]); labelDiapo.setIcon(new ImageIcon(img1.getImage().getScaledInstance(largeur, hauteur,Image.SCALE_DEFAULT))); labelDiapo.repaint(); diapo.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); diapo.add(labelDiapo); pauseTime(3); diapo.setSize(largeur, hauteur); diapo.setVisible(true); i++; } }
Partager