djk Posté 17 Février 2004 Posté 17 Février 2004 Salut, J'ai un problème pour priver l'accès à un JInternalFrame de niveau inférieur lorsqu'un JInternalFrame de niveau supérieur est "visible". Imaginez : j'ai un JInternalFrame à un niveau (Layer) le plus bas (une fenetre de saisie). Quand je valide ma saisie, j'ouvre un JInternalFrame (une fenetre de résultats) à un niveau supérieur pour que la superposition soit gérée graphiquement au sein de mon JDesktopPane/JFrame. => Le problème est que je peux encore sélectionner la "fenetre de saisie" (JInternalFrame de layer inférieur) et je ne voudrais pas que ce soit possible, un peu comme une pop-up : il faudrait fermer la "fenetre de résultats" pour pouvoir interagir à nouveau avec la fenetre de saisie. Mais je ne veux pas utiliser de pop-up car c'est trop limité. Je ne veux pas non plus masquer la fenetre inférieure car je veux les voir toutes. J'ai essayé d'ajouter un VetoableChangeListener, ça marche bien, je ne peux plus sélectionner la fenêtre inférieure, MAIS si je clique directement dans une zone de ma fenetre, malgré le Veto, je peux saisir des choses, utiliser les boutons etc (dans une fenêtre qui reste donc "inactive" grâce au veto) J'ai bien pensé griser tous les éléments de ma fenêtre, mais c'est un peu bourrin comme code. Si quelqu'un a une solution, je suis preneur. Je cherche quelque chose du genre "setSelectable(false)" à appliquer sur le fenêtre inférieure qd la fenetre de niveau supérieur est affichée, mais évidemment, ça n'existe pas. Merci
Tizel Posté 17 Février 2004 Posté 17 Février 2004 Salut DJK, je pense, mais je peux me tromper, que la solution passe par la méthode setEnabled(boolean);. appelons tes deux fenetres, "fenetrePrincipale" et "fenetreSecondaire". Au moment de l'affichage de ta fenêtre secondaire, tu appliques : fenetrePrincipale.setEnabled(false); Au moment de la fermeture de ta fenêtre secondaire, tu appel fenetrePrincipale.setEnabled(true); En espérant que ma solution soit la bonne (je n'ai pas eu le temps de me monter un petit exemple pour tester). Tizel
djk Posté 19 Février 2004 Auteur Posté 19 Février 2004 Salut, Merci, mais c'est insuffisant, en fait le problème est bien plus complexe : Un résumé ici : http://www.developpez.net/forums/viewtopic...p=855442#855442 A+
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant