Je dois écrire une applet qui ouvre une boîte de dialogue de mot de passe. Le problème est que la boîte de dialogue est configurée pour être toujours en haut, mais quand l'utilisateur clique sur la boîte de dialogue de la fenêtre IE est caché derrière la fenêtre IE néanmoins. Et puisque la boîte de dialogue est modale et contient tous les threads IE le volet IE ne pas actualise et la fenêtre de dialogue est toujours peinte sur IE (mais pas actualisé). Ce comportement déroute les utilisateurs (ils voient le dialogue sur IE mais il semble qu'il a pendu puisqu'il n'est pas actualisé).Les boîtes de dialogue modales dans IE sont cachées derrière IE si l'utilisateur clique sur le volet IE
J'ai donc besoin d'un moyen de garder ce dialogue au-dessus de tout. Mais toute autre solution à ce problème serait bien.
Voici le code:
PassDialog dialog = new PassDialog(parent);
/* do some non gui related initialization */
dialog.pack();
dialog.setLocationRelativeTo(null);
dialog.setAlwaysOnTop(true);
dialog.setVisible(true);
Résolution: Comme parent @shemnon noté que je devrais faire une fenêtre au lieu de (null, Frame, Applet) de dialogue modale. Donc, bonne façon de initlialize parent était:
parent = javax.swing.SwingUtilities.getWindowAncestor(theApplet);
Eh bien, j'ai fait quelque chose comme JOptionPane.getRootFrame. Je vais regarder dans la première chose demain. –
A travaillé - merci. –