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 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
| import java.awt.BorderLayout;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
import javax.swing.JWindow;
/** Classe de la fenêtre de SplashScreen */
public class SplashView extends JWindow implements Runnable
{
/**
* UID généré par Eclipse
*/
private static final long serialVersionUID = 5120064167466501647L;
/** La progress bar */
private JProgressBar bar;
public static void main(String args[]) throws InterruptedException{
SplashView spWin = new SplashView();
Thread t = new Thread (spWin);
t.start();
Thread.sleep(3000);
// fen = new MainView();
}
/** Constructeur */
public SplashView ()
{
//réglages relatifs à le fenêtre
this.setSize(500, 213);
this.setLocationRelativeTo(null);
//Instanciation du JPanel principal
JPanel pan = new JPanel();
//Instanciation du JPanel de l'image
JLabel img = new JLabel(new ImageIcon("img/splash.png"));
img.setVerticalAlignment(JLabel.TOP);
img.setHorizontalAlignment(JLabel.CENTER);
//Instanciation de la JProgressBar
bar = new JProgressBar();
bar.setMinimum(0);
bar.setMaximum(100);
bar.setValue(0);
bar.setStringPainted(true);
bar.setString("Initialisation...");
//Ajout des composants au JPanel
pan.setLayout(new BorderLayout());
pan.add(img, BorderLayout.CENTER);
pan.add(bar, BorderLayout.SOUTH);
//Réglages relatifs à la fenêtre
getContentPane().add(pan);
this.setAlwaysOnTop(true);
}
@Override
public void run()
{
this.setVisible(true);
for (int i = 0; i < 100; i++)
{
setBar(i, "Initialisation terminée !");
try
{
Thread.currentThread().sleep(300);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
}
this.dispose();
}
/** Méthode permettant de mettre à jour la valeur et le texte de la Progress bar */
public void setBar (int val, String text)
{
bar.setValue(val);
bar.setString(text);
}
/** Méthode permettant de mettre à jour seulement le texte de la progress bar */
public void setBarString (String text)
{
bar.setString(text);
}
} |
Partager