Bonjour,
je suis confronté au problème suivant, j'ai crée une interface qui ne sert qu'a afficher un GIF affichant WAIT avec une petite animation.
Voici le code :
Celui-ci fonctionne
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 package menus; import java.awt.Dimension; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class WaitGif extends JFrame { JPanel contentPane; JLabel imageLabel = new JLabel(); public WaitGif() { try { //setDefaultCloseOperation(EXIT_ON_CLOSE); contentPane = (JPanel) getContentPane(); // contentPane.setLayout(new BorderLayout()); setSize(new Dimension(500, 280)); ImageIcon ii = new ImageIcon(this.getClass().getResource("wait.gif")); imageLabel.setIcon(ii); contentPane.add(imageLabel, java.awt.BorderLayout.CENTER); // show it this.setLocationRelativeTo(null); this.setUndecorated(true); this.setAlwaysOnTop(true); this.setVisible(true); } catch (Exception exception) { exception.printStackTrace(); } } }
Par contre, je fais appel à lui depuis un bout de code juste après l'ouverture d'une fenêtre de dialogue pour indiquer l'emplacement d'un fichier.
Ce que je veux c'est qu'une fois le chemin indiqué cette image s'affiche le temps de la génération du document qui est un html que j’ouvre ensuite.
En pratique elle s'affiche bien mais après la génération du document ce qui est bien trop tard et ne sert plus rien
J'ai un peu fouillé sur le net : mes pistes vont vers la création d'un thread pour ouvrir la fenêtre de GIF. Mais je ne suis pas sûr d'aller dans la bonne direction car ma tentative avec un thread n'a pas changé le résultat.
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 JFileChooser fileChooser = new JFileChooser(); fileChooser.setDialogTitle("choisir l'emplacement ou stocker le fichier"); int userSelection = fileChooser.showSaveDialog(this); //if (userSelection == JFileChooser.APPROVE_OPTION) { scheminexport = fileChooser.getSelectedFile().toString() + ".html"; File file = new File(scheminexport); //} //ecran animé pour patienter le temps de la génération WaitGif wait = new WaitGif(); //je récupère la liste des patients et je fait un tableau par patient tant que j'ai des patients sur cette date String schambre =""; String slocalisation =""; String snom =""; String sprenom =""; String scommentaire =""; String sreservediet =""; String sportion=""; String stexture=""; Etc. generation d'un html et ouverture de celui-ci
Si vous avez déjà été confronté à cette problématique je suis preneur de vos conseils.
Merci
Partager