Bonjour,
Dans mon application swing j'ai un bouton qui affiche une modal mais chaque fois que je clic sur ce bouton une nouvelle modal apparait !
Existe-t-il un moyen de forcer l'affichage d'une seul fenetre ?
Merci
Bonjour,
Dans mon application swing j'ai un bouton qui affiche une modal mais chaque fois que je clic sur ce bouton une nouvelle modal apparait !
Existe-t-il un moyen de forcer l'affichage d'une seul fenetre ?
Merci
Si la fenêtre est modale, comment peux-tu cliquer à nouveau sur le bouton qui la lance ?![]()
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Que la force de la puissance soit avec le courage de ta sagesse.
ça c'est une bonne question ! !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 JDialog dial = new JDialog(); dial.setVisible( true ); dial.setBounds( 250, 250, 700, 200 ); dial.setTitle( "ma modal" ); dial.setModal( true ); dial.setLocationRelativeTo( this ); dial.setAlwaysOnTop( true );
Utilise le bon constructeur dès le départ : frame owner + boolean model.
de plus, un setModal ne sert à rien sur une fenêtre déjà affichée. Plus d'explication dans la javadoc.
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Que la force de la puissance soit avec le courage de ta sagesse.
Juste un conseil suite à la remarque de Dinobogan, en général le setVisible() se fait en dernier.
Tu paramètres la fenêtre, puis tu l'affiches, cela t'évitera ce problème ainsi que d'autres que tu n'as pas encore eu !
Je confirme (et le setVisible() est mis à la fin )
J'avais pas récupéré le parent
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 JDialog dial = new JDialog(frame, true );
Affaire conclue![]()
Partager