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

Agents de placement/Fenêtres Java Discussion :

[JFrame] Mes composants ne s'affichent plus .


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    340
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 340
    Points : 139
    Points
    139
    Par défaut [JFrame] Mes composants ne s'affichent plus .
    Jusqu'à hier, il n'y avait aucun problème. Et voila que ce matin, je relance mon projet, et je récupère un vieux bug que j'avais déjà connu sur d'autres projets, et dont je n'ai jamais réussi à me défaire.

    Là, en intro de mon programme, j'affiche une JFrame avec dedans un panel, qui contient en gros 2 boutons, pr que l'utilisateur choisisse entre le mode auto et le manuel.

    Depuis ce matin, ces composants sont invisibles, il faut cliquer sur la bordure d'agrandissement (pas besoin d'agrandir, juste un clic dessus) pour les faire réapparaitre par magie !!!

    Je vous mets le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    /*
    	 * Composants relatifs à l'intro
    	 */
    	protected JFrame fpIntro;
    	protected JPanel pIntro;
    	protected JPanel intro;
    	protected JPanel pManu;
    	protected JPanel pAuto;
    	protected JPanel p1;
    	protected JPanel p2;
    	protected JButton auto;
    	protected JButton manu;
     
    /*
    	 * Construction des composants relatifs au panel Intro
    	 */
    	pIntro=new JPanel(new BorderLayout());
    	intro=new JPanel(new BorderLayout());
    	pManu=new JPanel(new FlowLayout());
    	pAuto=new JPanel(new FlowLayout());
    	p1=new JPanel(new FlowLayout());
    	p2=new JPanel(new FlowLayout());
    	fpIntro=new JFrame("Evolution Génétique");
     
    /*
    	 * Positionnement des composans relatifs au panel Intro
    	 */
    	intro.setPreferredSize(new Dimension(80,20));
    	pManu.setPreferredSize(new Dimension(68,72));
    	pAuto.setPreferredSize(new Dimension(68,72));
    	p1.setPreferredSize(new Dimension(200,200));
    	p2.setPreferredSize(new Dimension(200,200));
     
    	manu=new JButton("Mode Manuel");
    	auto=new JButton("Mode Automatique");
    	pManu.add(manu);
    	pAuto.add(auto);
    	intro.add("North",pManu);
    	intro.add("South",pAuto);
    	pIntro.add("North",p1);
    	pIntro.add("South",p2);
    	pIntro.add("Center",intro);
    	fpIntro.getContentPane().add(pIntro);
    	fpIntro.setVisible(true);
    	fpIntro.setSize(1024,748);
    	fpIntro.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
    	fpIntro.setAlwaysOnTop(true);

  2. #2
    Membre chevronné Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Points : 2 232
    Points
    2 232
    Par défaut
    Si tu ajoute un
    à la fin est ce que c'est mieux?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    340
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 340
    Points : 139
    Points
    139
    Par défaut
    oui et non... ça m'affiche un composant, mais le panel dans lequel est inséré le tout (pIntro) et coupé, et donc au final, je ne vois que le bouton manu...

  4. #4
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Appelles

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fpIntro.getContentPane().revalidate() ;
    avant de faire le setVisible sur ta JFrame, et pourras alors être sûr que ta fenêtre a bien agencé les composants.

    Mais normalement, si le setVisible est la dernière méthode appelée lors de la création de ta JFrame, tu ne devrais pas avoir ce problème...

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    340
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 340
    Points : 139
    Points
    139
    Par défaut
    le revalidate() ne passait pas alors j'ai finalement mis ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    fpIntro.validate();
    et maintenant, ça marche...
    Pourquoi est ce que ça c'est mis à ne plus marcher, par contre, je n'ai tjrs pas compris...
    mais bon, merci pr l'info.

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

Discussions similaires

  1. Recherche composant adéquat pour afficher mes résultats
    Par julie_lab dans le forum Débuter
    Réponses: 4
    Dernier message: 24/10/2010, 16h49
  2. Réponses: 6
    Dernier message: 18/05/2010, 16h57
  3. Afficher une fenêtre par dessus mes composants
    Par tafkap dans le forum Flex
    Réponses: 8
    Dernier message: 04/01/2010, 11h24
  4. [EasyPHP] Mes images en PHP ne s'affichent plus en local depuis mise à jour EasyPHP 1.8
    Par Iro87 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 09/09/2007, 19h29
  5. Mes composants ne s'affichent pas
    Par michel71 dans le forum Débuter
    Réponses: 2
    Dernier message: 05/08/2007, 17h01

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