Affichage bouton + zone texte [Résolu]

Signaler
Messages postés
44
Date d'inscription
mardi 18 juillet 2006
Statut
Membre
Dernière intervention
11 août 2009
-
Messages postés
44
Date d'inscription
mardi 18 juillet 2006
Statut
Membre
Dernière intervention
11 août 2009
-
Bonjour,
j'ai un fenetre dans laquelle je veux afficher 4 zones textes et 4 boutons.
a chaque ligne se trouve une zone texte avec le bouton correspondant. le problème est que l'affichage ne correspond pas à ceci :
voici la partie du code correspondant :

//premier panel
JPanel p1 = (JPanel)getContentPane();
        p1.setLayout(
             new FlowLayout(FlowLayout.RIGHT, 50, 20));

// 2eme panel

        JPanel p2 = (JPanel)getContentPane();
         p2.setLayout(
                new FlowLayout(FlowLayout.LEFT, 50, 20));

// ajout des zones textes:
        p1.add(new JLabel("outil Nagios        : \n"));
        p1.add(new JLabel("outil OCS inventory : \n"));
        p1.add(new JLabel("outil simplifier    :\n"));
        p1.add(new JLabel("quitter             :\n"));

    // les boutons

        p2.add(btNagios);
        p2.add(btOcs);
        p2.add(btOutil);
       p2.add(btExit);

Merci d'avance.

3 réponses

Messages postés
2333
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
26 juillet 2013
35
salut:

Le FlowLayout a des fonctionalités restreintes et ne permet pas de répondre à tius les besoins pour ajuster comme on le souhaite une interface graphique.

Je pense que c'est le temps pour voir d'autre layouts plus avancés. (GridBagLayout, ...)

Mais dans le cas de ton problème un simple GridLayout résoud le problème facilement:

// Créer un GridLayout, c'est comme une table que tu remplis case par case de gauche à droite et de haut en
// bas
JPanel panel = new JPanel(new GridLayout((4, 4));
panel.add(...);
 [....]
panel.add(...);

Bye.
Messages postés
30
Date d'inscription
jeudi 2 août 2007
Statut
Membre
Dernière intervention
19 janvier 2008

sinon  pour faire autrement  apres sa depend comment on code mais pour le GridLayout  moi perso je trouve que c'est plus clair comme sa:

   

//cree le premier panel 
JPanel p1 = new  JPanel ();

//Affecte un gestionnaire de presentation a ce pannau
        GridLayout disposition = new GridLayout(4,2);
        p1.setLayout(disposition);

//cree le  deuxieme panel
JPanel p2 = new jPanel();

//Affecte un gestionnaire de presentation a ce pannau

        GridLayout disposition2 = new GridLayout(4,2);

        p2.setLayout(disposition2);

// puis apres comme tu la fait 
// ajoute les champs textes

p1.add.......;
p1.add ......;

//Ajoute les Boutons

p2.add ......;
p2.add ......;



c'est une maniere comme une autre et sa marche
Messages postés
44
Date d'inscription
mardi 18 juillet 2006
Statut
Membre
Dernière intervention
11 août 2009

Merci pour vos réponses.