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
|
import java.awt.AlphaComposite;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.SplashScreen;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
public class FrmTestSplash extends javax.swing.JFrame {
public FrmTestSplash() {
super("Fenêtre test");
// Début du code qui ajoute la jauge au SplashScreen...
SplashScreen splash = SplashScreen.getSplashScreen();
Graphics2D surfaceSplash = null;
JProgressBar jauge = null;
JPanel conteneurJauge = null;
if (splash != null) {
surfaceSplash = splash.createGraphics();
surfaceSplash.setComposite(AlphaComposite.Clear);
surfaceSplash.setPaintMode();
}
if (surfaceSplash != null) {
conteneurJauge = new JPanel();
conteneurJauge.setLayout(null);
conteneurJauge.setOpaque(false);
conteneurJauge.setBounds(0, 0, splash.getBounds().width, splash.getBounds().height);
jauge = new JProgressBar();
jauge.setFont(new Font("Verdana", Font.PLAIN, 9));
jauge.setMaximum(10);
jauge.setMinimum(0);
jauge.setValue(0);
jauge.setVisible(true);
jauge.setString("Jauge de test...");
jauge.setStringPainted(true);
jauge.setBounds(175, 185, 155, 20);
conteneurJauge.add(jauge);
conteneurJauge.validate();
conteneurJauge.paint(surfaceSplash);
splash.update();
// Une petite boucle qui nous laisse dix secondes pour voir le SplashScreen...
for (int i = 1 ; i <= 10 ; i++) {
try {
Thread.sleep(1000);
}
catch (Exception e) {}
jauge.setValue(i);
if (i == 1) jauge.setString(i + " seconde...");
else jauge.setString(i + " secondes...");
conteneurJauge.validate();
conteneurJauge.paint(surfaceSplash);
splash.update();
}
}
// Fin du code concernant le SplashScreen.
javax.swing.JButton jButton1 = new javax.swing.JButton();
jButton1.setText("Quitter");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton1.setBounds(120, 90, 80, 20);
java.awt.Container conteneur = getContentPane();
conteneur.setLayout(null);
conteneur.add(jButton1);
pack();
setSize(320, 200);
setTitle("Fenetre test");
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
dispose();
}
public static void main(String args[]) {
new FrmTestSplash();
}
} |
Partager