Répartition d'elements interface graphique

Résolu
co2_gaz Messages postés 29 Date d'inscription samedi 21 octobre 2006 Statut Membre Dernière intervention 14 septembre 2009 - 20 févr. 2007 à 20:52
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 - 23 févr. 2007 à 11:59
Bonjour
SVP
il ya pas une personne qui peut m'aider j'arrive pas bien à organisé mon interface graphique comme je veut j'utilise des BorderLayout et GridLaout, mais bon!

package org.plenadis.tutorial.client.hello;

/****************************************************************/
/*                      hh                                        */
/*                                                              */
/****************************************************************/
import java.awt.*;
import java.awt.event.*;
import java.util.List;

import javax.swing.*;
import javax.swing.border.*;
import javax.swing.event.*;

import org.plenadis.sdk.client.ui.components.PButton;
import org.plenadis.sdk.client.ui.components.PCheckBox;
import org.plenadis.sdk.client.ui.components.PLabel;
import org.plenadis.sdk.client.ui.components.PPanel;

/**
 * Summary description for hh
 *
 */
class hh {

 
 
    public static Component initializeComponent(List txt)
    {
        System.out.println("==============>"+txt.size());
         JTabbedPane jTabbedPane1;
         JPanel contentPane;
         //-----
         JLabel jLabel3;
         JPanel jPanel1;
         //-----
         JToggleButton jToggleButton1;
         JButton jButton1;
         JPanel jPanel4;
         JPanel jPanel41;
         //-----
         JPanel jPanel5;
         //-----
         JPanel jPanel8;
         //-----
         JPanel jPanel9;
         //-----
         JPanel jPanel10;
         //-----
         JCheckBox[] jrbObli = new JCheckBox[txt.size()];
         //-----
         JCheckBox[] jrbOpt = new JCheckBox[6];
        
         // End of variables declaration
     
     
   
        jTabbedPane1 = new JTabbedPane();
        contentPane = new JPanel();
        //-----
        jLabel3 = new JLabel();
        jPanel1 = new JPanel();
        //-----
        jToggleButton1 = new JToggleButton();
        jButton1 = new JButton();
        jPanel4 = new JPanel();
        jPanel41 = new JPanel();
        //-----
        jPanel5 = new JPanel();
        //-----
        jPanel8 = new JPanel();
        //-----
        jPanel9 = new JPanel();
        //-----
        jPanel10 = new JPanel();
        //-----
        for(int i=0;i< txt.size()-1;i++){
            jrbObli[i] = new JCheckBox();
           
        }
        //
        for(int i=0;i<5;i++){
            jrbOpt[i] = new JCheckBox();
           
        }
 
        //
        // jTabbedPane1
        //
        jTabbedPane1.addTab("Semestre 1", jPanel1);
        jTabbedPane1.addTab("Semestre 2", new PPanel());
        jTabbedPane1.addTab("Information", new PPanel());
        jTabbedPane1.setTabPlacement(JTabbedPane.BOTTOM);
        jTabbedPane1.addChangeListener(new ChangeListener() {
            public void stateChanged(ChangeEvent e)
            {
                jTabbedPane1_stateChanged(e);
            }
 
        });
        //
        // contentPane
        //
        contentPane.setLayout(new BorderLayout(0, 0));
        contentPane.add(jTabbedPane1, BorderLayout.CENTER);
        //
        // jLabel3
        //
        jLabel3.setText("jLabel3");
        //
        // jPanel1
        //
        jPanel1.setLayout(new BorderLayout(0, 0));
        jPanel1.add(jPanel4, BorderLayout.EAST);
        jPanel1.add(jPanel5, BorderLayout.CENTER);
        jPanel1.add(jLabel3, BorderLayout.NORTH);
        //
        // jToggleButton1
        //
        jToggleButton1.setIconTextGap(6);
        jToggleButton1.setText("30");
        jToggleButton1.setEnabled(false);
        jToggleButton1.setSelected(true);
        jToggleButton1.addItemListener(new ItemListener() {
            public void itemStateChanged(ItemEvent e)
            {
                jToggleButton1_itemStateChanged(e);
            }
 
        });
        //
        // jButton1
        //
        jButton1.setMargin(new Insets(0, 0, 0, 0));
        jButton1.setText("Mise à zero");
        jButton1.setVerticalAlignment(SwingConstants.BOTTOM);
        jButton1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e)
            {
                jButton1_actionPerformed(e);
            }
 
        });
        //
        // jPanel4
        //
        jPanel4.setLayout(new BorderLayout());
        jPanel41.setLayout(new GridLayout(6, 1));
        jPanel41.add(jToggleButton1, 0);
        jPanel41.add(jButton1, 1);
        jPanel4.add(jPanel41, BorderLayout.NORTH);
        //
        // jPanel5
        //
        jPanel5.setLayout(new BorderLayout(0, 0));
        jPanel5.add(jPanel8, BorderLayout.NORTH);
        jPanel5.add(jPanel9, BorderLayout.CENTER);
        //
        // jPanel8
        //
        jPanel8.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));
        jPanel8.setBorder(new TitledBorder("UE obligatoire"));
        for(int i=0;i<txt.size()-1;i++){
            jPanel8.add(jrbObli[i]);
            jrbObli[i].setText((String) txt.get(i));
        }
        //
        // jPanel9
        //
        jPanel9.setLayout(new BorderLayout(0, 0));
        jPanel9.add(jPanel10, BorderLayout.NORTH);
        //
        // jPanel10
        //
        jPanel10.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));
        jPanel10.setBorder(new TitledBorder("UE optionel"));
        for(int i=0;i<5;i++){
            jPanel10.add(jrbOpt[i]);
        }
        //
        // hh
        contentPane.validate();
        return contentPane;
    }
 
    //
    // TODO: Add any appropriate code in the following Event Handling Methods
    //
    private static void jTabbedPane1_stateChanged(ChangeEvent e)
    {
        System.out.println("\njTabbedPane1_stateChanged(ChangeEvent e) called.");
        // TODO: Add any handling code here
 
    }
 
    private static void jToggleButton1_itemStateChanged(ItemEvent e)
    {
        System.out.println("\njToggleButton1_itemStateChanged(ItemEvent e) called.");
        System.out.println(">>" + ((e.getStateChange() == ItemEvent.SELECTED) ? "selected":"unselected"));
        // TODO: Add any handling code here
         
    }
 
    private static void jButton1_actionPerformed(ActionEvent e)
    {
        System.out.println("\njButton1_actionPerformed(ActionEvent e) called.");
        // TODO: Add any handling code here
    }
}
 
    //
    // TODO: Add any method code to meet your needs in the following area
    //
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

    public static void main(String[] args)
    {
        JFrame.setDefaultLookAndFeelDecorated(true);
        JDialog.setDefaultLookAndFeelDecorated(true);
        try
        {
            UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
        }
        catch (Exception ex)
        {
            System.out.println("Failed loading L&F: ");
            System.out.println(ex);
        }
        new hh();
    } //End of Testing
 
 
}
 */

9 réponses

Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
20 févr. 2007 à 22:03
Salut,

c'est pas un tutos mais tu peux toujours regarder ICI regarde surtout la classe Frame.java

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
3
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
20 févr. 2007 à 21:00
Salut,

oui et ? si tu veux un conseil laisse tombé les BorderLayout et GridLayout et utilise GridBagLayout

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
0
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
20 févr. 2007 à 21:18
Surtout que pour t'aider, il faudrait au moins que tu nous dise quelle position tu veux donner à tes contrôles... on peut pas le deviner !
0
co2_gaz Messages postés 29 Date d'inscription samedi 21 octobre 2006 Statut Membre Dernière intervention 14 septembre 2009
20 févr. 2007 à 21:40
Merci
j'ai regardé l'api pour voir comment utiliser GridBagLayout mais c un peut compliqué sinon pour le panel je le faire comme ceci http://www.ens.math-info.univ-paris5.fr/~hw04933/im.jpg
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
20 févr. 2007 à 21:41
Salut,

GridbagLayout est super top pour ce genre de positionnement

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
0
co2_gaz Messages postés 29 Date d'inscription samedi 21 octobre 2006 Statut Membre Dernière intervention 14 septembre 2009
20 févr. 2007 à 21:57
oui mais il ya pas un tutoriel qui explique bien comment l'utiliser
0
co2_gaz Messages postés 29 Date d'inscription samedi 21 octobre 2006 Statut Membre Dernière intervention 14 septembre 2009
20 févr. 2007 à 22:23
Merci
0
viking85 Messages postés 59 Date d'inscription lundi 20 novembre 2000 Statut Membre Dernière intervention 28 mars 2007 14
23 févr. 2007 à 11:42
Merci beaucoup Twinuts, le GridBagLayout est vraiment GENIAL !!
J'ai maintenant l'impression de pouvoir faire ce que je veux !!
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
23 févr. 2007 à 11:59
Salut,

bah de rien ;) (pour moi c'est le top ce layout, un peut lourd en terme de code mais il permet une grande souplesse dans le positionnement des composants).

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
0
Rejoignez-nous