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 :

Problème de disposition interne à un CardLayout


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2007
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 120
    Par défaut Problème de disposition interne à un CardLayout
    Bonjour,

    je cherche à créer deux JPanel, gérés par un CardLayout ( classique ).
    Pour l'instant j'avais déjà un premier panel où la disposition était impeccable, lorsque j'ajoute le CardLayout et que je fais un premier test sur ce panel, tout est affiché n'importe comment à l'intérieur. Mon premier réflexe a été de chercher un éventuel FlowLayout qui traîne mais rien...

    Voila un extrait des attributs et de la construction, merci à ceux qui me liront :

    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
     
    public class DaresMainFrame extends JFrame
    {	
        /*
         * Constant title of the plugin window
         */
    	private static final String TITLE = "Reedition";
     
        /*
         * Graphical elements : panels
         */
        private JPanel labelPanel = new JPanel(new GridLayout(1,20));
        private JPanel centerPanel = new JPanel(new GridLayout(1,20));
        private JPanel southPanel = new JPanel(new BorderLayout());
     
        //éléments au nord...
     
        //éléments au centre...
     
        //déclaration des menus ...
     
        /*
         * Label au sud de la fenetre HORS du CardLayout
         */
        JLabel infoLabel = new JLabel("No selection");   
     
    	public DaresMainFrame()
    	{
    		super(TITLE);
     
    		/************** HierarchyViewer ****************/
     
    		JPanel HierarchyViewer = new JPanel();
     
            /*
             * North elements
             */
            HierarchyViewer.add(labelPanel, BorderLayout.NORTH);
     
    	    /*
    	     * Center elements
    	     */
    	    HierarchyViewer.add(centerPanel, BorderLayout.CENTER);
     
    	    /************** RelationViewer ***********/
    	    //deuxième JPanel en travaux
    	    JPanel relationsViewer = new JPanel();
     
    	    /************** for both interfaces ******************/
     
    		//ajout des menus...
     
    	    /*
    	     * South elements
    	     */
    	    this.add(southPanel, BorderLayout.SOUTH);
    	    southPanel.add(infoLabel,BorderLayout.WEST);
     
    	    /*
    	     * general
    	     */
    	    this.setVisible(true);
    	    this.setSize(800,600);
    	    this.addComponentListener(new DaresComponentListener(this));
    	    this.addWindowListener(new DaresWindowListener(this));
     
    	    /********* creation of the CardLayout *********/
    		cards = new JPanel(new CardLayout());
    		cards.add(HierarchyViewer, HIERARCHY_VIEWER);
    		cards.add(relationsViewer, RELATIONS_VIEWER);
    		this.add(cards, BorderLayout.CENTER);
     
    		Container contentPane = this.getContentPane();
    		contentPane.setLayout((CardLayout) (cards.getLayout()));
     
    		CardLayout cl = (CardLayout) (cards.getLayout());
    		cl.show(cards, HIERARCHY_VIEWER);
    	}
     
    	/*
    	 * main function
    	 */
    	public static void main(String[] args)
    	{
    		DaresMainFrame window = new DaresMainFrame();
    	}
    }

  2. #2
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Bonjour, tu t'es un peu emmêlé les pinceaux dans la construction de ton ihm.
    - Tu as changé le layout de la frame en CardLayout après avoir ajouté les éléments au centre et au sud.
    - dans cards.add tu as inversé les 2 arguments.
    - tu ajoutes cards à l'ihm après l'avoir affichée.

    Je pense que cela devrait mieu fonctionner :
    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
     
    public class DaresMainFrame extends JFrame
    {   
        /*
         * Constant title of the plugin window
         */
        private static final String TITLE = "Reedition";
     
        /*
         * Graphical elements : panels
         */
        private JPanel labelPanel = new JPanel(new GridLayout(1,20));
        private JPanel centerPanel = new JPanel(new GridLayout(1,20));
        private JPanel southPanel = new JPanel(new BorderLayout());
     
        //éléments au nord...
     
        //éléments au centre...
     
        //déclaration des menus ...
     
        /*
         * Label au sud de la fenetre HORS du CardLayout
         */
        JLabel infoLabel = new JLabel("No selection");   
     
        public DaresMainFrame()
        {
            super(TITLE);
     
            /************** HierarchyViewer ****************/
            JPanel HierarchyViewer = new JPanel();
     
            /*
             * North elements
             */
            HierarchyViewer.add(labelPanel, BorderLayout.NORTH);
     
            /*
             * Center elements
             */
            HierarchyViewer.add(centerPanel, BorderLayout.CENTER);
     
            /************** RelationViewer ***********/
            //deuxième JPanel en travaux
            JPanel relationsViewer = new JPanel();
     
            /************** for both interfaces ******************/
     
            //ajout des menus...
     
            /*
             * South elements
             */
            southPanel.add(infoLabel,BorderLayout.WEST);
     
     
            /*
             * general
             */
            /********* creation of the CardLayout *********/
            JPanel cards = new JPanel(new CardLayout());
            cards.add("HIERARCHY_VIEWER", HierarchyViewer);
            cards.add("RELATIONS_VIEWER", relationsViewer);
            this.add(cards, BorderLayout.CENTER);
            this.add(southPanel, BorderLayout.SOUTH);
     
            this.setVisible(true);
            this.setSize(800,600);
            this.addComponentListener(new DaresComponentListener(this));
            this.addWindowListener(new DaresWindowListener(this));
     
            CardLayout cl = (CardLayout) (cards.getLayout());
            cl.show(cards, "HIERARCHY_VIEWER");
        }
     
        /*
         * main function
         */
        public static void main(String[] args)
        {
            DaresMainFrame window = new DaresMainFrame();
        }
    }

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2007
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 120
    Par défaut
    Merci pour ton aide morph .

    J'ai effectué les changements, malheureusement rien ne change...snif

    Le gridLayout ne s'adapte pas à la fenêtre on dirait.

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

Discussions similaires

  1. Problème de disposition dans Quick Report
    Par kiminfor dans le forum Débuter
    Réponses: 6
    Dernier message: 12/01/2009, 10h57
  2. [JFrame] Problème de disposition des composants
    Par alizee971 dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 25/08/2008, 15h47
  3. Problème de disposition (layout, sizer ..)
    Par Grummfy dans le forum wxPython
    Réponses: 2
    Dernier message: 08/09/2007, 16h48
  4. Problème execution 500 Internal Server Error
    Par alicom86 dans le forum Forms
    Réponses: 0
    Dernier message: 05/08/2007, 02h09
  5. Problème de disposition avec un CardLayout
    Par Invité dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 25/07/2007, 10h25

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