La désactivation de la fermer x dans un JOptionPane
Je voudrais désactiver la fermer x dans le coin supérieur gauche de mon JOptionPane comment puis-je faire?
Pourquoi voulez-vous faire? JOptionPane devrait normalement avoir une "Annuler" ou "Non". Vous devriez faire de frapper le bouton de fermeture se comporter de manière cohérente avec ces.
Je suis d'accord avec ykaganovich. Cela semble être une mauvaise idée de l'expérience utilisateur perspective. Si votre utilisateur choisit pas l'option, il serait peut-être mieux à un) ne rien faire ou b) choisir un par défaut raisonnables pour eux.
Je suppose que j'ai peut-être fait une déclaration erronée de la question de ce que je voulais vraiment faire était de se débarrasser de sur le bouton fermer (c'est ce que l'apple human interface guidelines suggèrent et mon patron est en amour avec HIG). En fin de compte, il a fini par être simplement plus facile de donner le bouton fermer de la même fonction que le bouton annuler si c'est ce que j'ai fait. Merci.
Je suis d'accord avec ykaganovich. Cela semble être une mauvaise idée de l'expérience utilisateur perspective. Si votre utilisateur choisit pas l'option, il serait peut-être mieux à un) ne rien faire ou b) choisir un par défaut raisonnables pour eux.
Je suppose que j'ai peut-être fait une déclaration erronée de la question de ce que je voulais vraiment faire était de se débarrasser de sur le bouton fermer (c'est ce que l'apple human interface guidelines suggèrent et mon patron est en amour avec HIG). En fin de compte, il a fini par être simplement plus facile de donner le bouton fermer de la même fonction que le bouton annuler si c'est ce que j'ai fait. Merci.
OriginalL'auteur Mike2012 | 2009-11-20
Vous devez vous connecter pour publier un commentaire.
Vous pouvez toujours juste afficher la boîte de dialogue nouveau lorsque l'utilisateur essaie de le fermer sans la sélection d'une option. Il y a un exemple de la façon de remplacer la valeur par défaut de fermeture de comportement à sun.com. Regardez sous "l'Arrêt Automatique de la boîte de Dialogue de Fermeture" et ils ont le code suivant:
À l'aide de ce code, vous pouvez facilement adapter la section commentée pour seulement permettre à la fenêtre pour être fermée lorsque l'utilisateur a cliqué sur l'une des options disponibles et de ne pas le bouton fermer.
OriginalL'auteur Brian Hasden
Michael,
Je ne sais pas comment faire pour désactiver la Fermer[x]. Sinon, vous ne pouvez rien faire lorsque l'utilisateur clique sur elle. Vérifiez le code ci-dessous:
Est-il raisonnable pour vous?
Si vous regardez la réponse que j'ai fournie qui est directement à partir du Soleil, il montre comment faire ce que vous cherchez. Fondamentalement, vous auriez à garder une référence à la JOptionPane afin de récupérer la valeur de retour.
J'aime votre réponse. Pour moi, fonctionne comme un charme. Merci
OriginalL'auteur nandokakimoto
vous pouvez remplacer votre bouton de sortie par un bouton annuler déclaré dans JOptionPane et gérer votre annulation de l'opération en conséquence:
OriginalL'auteur Samsky
Je ne sais pas si il y a un moyen de le faire dans
JOptionPane
.Habituellement, quand les gens veulent plus de souplesse que JOptionPane offre (c'est fondamentalement un tas de statique usines pour quelques boîtes de dialogue), ils écrivent leurs propres boîtes de dialogue à l'aide de
JDialog
.JDialog propose la méthode héritée
setUndecorated
, ce qui élimine le X tout à fait. C'est plus de travail, mais vous pouvez faire de votre boîte de dialogue rechercher toutefois vous le souhaitez.OriginalL'auteur Carl Smotricz