IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

[Swing] Empêcher le retour au premier plan


Sujet :

AWT/Swing Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut [Swing] Empêcher le retour au premier plan
    Bonjour à tous,

    Aprés avoir effectué plusieurs recherches je n'ai pas trouvé de solution à mon problème.
    J'ai en fait deux JFrame, une principale et une secondaire. Lorsque j'effectue un traitement (un clacul) dans ma Frame Principale je met à jour l'affichage de ma Frame secondaire (visualisation java3d, je modifie le canvas dans le panel). Et à chaque fois la frame secondaire reviens au premier plan. Comment éviter cela ?

    Merci par avance.

    [Nean]

  2. #2
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut up
    ^up^

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2007
    Messages : 64
    Points : 58
    Points
    58
    Par défaut
    As tu essayé de faire un framePrincipale.toFront(); ou bien un frameSecondaire.toBack(); lors de la mise à jour de l'affichage ?

  4. #4
    Membre confirmé
    Avatar de mhamedbj
    Profil pro
    Inscrit en
    Février 2007
    Messages
    403
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 403
    Points : 554
    Points
    554
    Par défaut
    utilise une JDialog au lieu de JFrame pour celle que tu veux qu'elle reste au premier plan!!

    bon courage

  5. #5
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut Merci
    Je vous remercie de vos réponses.

    Je ne peux pas mettre la frame principale en JDialog car ce n'est pas moi qui l'implémente, et de plus elle ne doit pas tout le temps être au premier plan.

    Je veux juste qu'aprés la mise à jour de la visu la fenêtre de visu reste en arrière plan si elle y était et au premier plan sinon...

    La solution du toFront()/toBack() peut-être une alternative si je réalise les tests nécessaires, mais n'y aurait'il pas un moyen plus simple pour lui dire de rester où elle est ?

    Merci encore.

    [Nean]

  6. #6
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut
    Le problème du toFront() et du toBack(), c'est que ce sont des actions ponctuelles, par conséquent, je ne peux dire à ma fenêtre de se remettre derrière, qu'une fois qu'elle est passé devant. Même si cela ne dure qu'un bref instant (tout de même une seconde ou deux), je ne voudrais pas que ma Frame de visu se retrouve au premier plan si elle n'y était pas au moment ou j'ai lancé la visualisation...
    J'aimerais que ma Frame reste au niveau où elle est, n'y aurait'il pas moyen de faire ceci ?

    [Nean]

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut dernier
    Dernier ^up^ au cas où...

  8. #8
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut La source...
    J'ai identifié la source du retour au premier plan, et la ligne qui provoque ce retrour de ma frame de visu au premier plan est dans une fonction de mise à jour de ma Frame ou je procède à un changement de canvas (affichage java3d) ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    panelVisu.remove(canvas);
    Une idée ?

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 42
    Points : 29
    Points
    29
    Par défaut Ah ah !
    Je viens juste de trouver une solution, j'encadre la ligne qui pose problème comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    this.setEnabled(false);
    panelVisu.remove(canvas);
    this.setEnabled(true);
    C'est un peu de la bidouille, mais ça marche !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. IE : Empêcher l'objet select au premier plan
    Par Sergejack dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 22/08/2006, 23h53
  2. [swing][JTabbedPane]onglet au premier plan ?
    Par Bobo59 dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 16/05/2006, 16h20
  3. Réponses: 2
    Dernier message: 14/03/2004, 22h04
  4. Premier plan sur un dialog
    Par |PaRa-BoL dans le forum MFC
    Réponses: 5
    Dernier message: 04/03/2004, 12h52
  5. forcer une fenetre à etre au premier plan jusqu'a ...
    Par peppena dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 22/12/2003, 16h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo