Bonjour à tous,
Je lance un un splashscreen a l'aide du composant JWindow():
Le problème est que la taille de la fenetre est petite.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 fen_splash= new JWindow(); fen_splash.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); fen_splash.setSize(450, 300);//On lui donne une taille pour qu'on puisse la voir fen_splash.setAlwaysOnTop(true);//Toujours au premier plan fen_splash.setLocationRelativeTo(null); try { splash = new SplashScreen(ImageIO.read(new File("images/splashscreen.gif")), fen_splash.getBounds()); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }
Si l'utilisateur fait clique gauche en dehors de cette fenetre, l'iimage reste au premier plan grâce à setAlwaysOnTop(true) mais dès qu'on arrive a la fin du splashscreen, la nouvelle fenêtre se lance en arrière plan.
-J'ai essayé fen.toFront();
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 fen_splash.setVisible(false); Fenetre fen = new Fenetre(); fen.setVisible(true); fen_splash.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
Mais cette méthode ne fonctionne pas sur l'OS: Windows
-J'ai essayé de changer le cursor pour pas avoir a cliquer ailleurs.
Mais le cursor change si je me met en dehors du splashscreen et je peux a nouveau cliquer!
-J'ai essayé de faire un :
setAlwaysOnTop(true); suivi de setAlwaysOnTop(false);
Mais ça ne me met pas la fenetre au premier plan.
Et si je laisse setAlwaysOnTop(true);
La fenêtre reste toujours au premier plan!
Comment faire?
Partager