begin process at 2012 02 12 16:35:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

BoxLayout


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

BoxLayout

vendredi 25 avril 2008 à 11:20:06 | BoxLayout

nanaou

Bonjour,

j'ai actuellement un petit problème avec un BoxLayout(Y_AXIS) :
j'y ajoute un panel qui s'affiche.
Ensuite, suite à une intéraction de l'utilisateur un tableau doit aparaître. Je l'ajoute donc au panel principal qui contient le BoxLayout.
Cepeandant, le tableau ne se met pas en dessous de l'autre élément (le 1er panel), mais par dessus. De plus le tableau s'affiche un peu à la fois qd on passe le curseur au dessus.

Merci
vendredi 25 avril 2008 à 12:02:11 | Re : BoxLayout

jojolemariole

Personnellement je n'utilise que 3 Layout, BorderLayout, GridLayout et FlowLayout.

Cependant j'ai fait un petit test, et hormis le validate() que j'ai du ajouté, ça a l'air de fonctionner. Montre-nous la partie de ton code qui coince si tu veux bien.

Mon test :


import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Test1 extends JFrame {

    private static final long serialVersionUID = 1L;

    private JPanel mainPanel;

    private JButton bouton1;
    private JButton bouton2;
    private JButton bouton3;

    private JPanel southPanel;

    public static void main(String... args) {
        new Test1();
    }

    public Test1() {
        super("Test boxlayout");
        setSize(480, 300);
        mainPanel = new JPanel();
        mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.Y_AXIS));
        bouton1 = new JButton("Premier composant");
        bouton2 = new JButton("Composant ajouté");
        bouton3 = new JButton("Ajouter un composant");

        mainPanel.add(bouton1);
        add(mainPanel, BorderLayout.CENTER);

        southPanel = new JPanel();
        southPanel.add(bouton3);
        add(southPanel, BorderLayout.SOUTH);

        setVisible(true);

        bouton3.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                mainPanel.add(bouton2);
                mainPanel.validate();
            }
        });
    }

}

vendredi 25 avril 2008 à 13:27:23 | Re : BoxLayout

indiana_jules

Salut,
pourquoi tu l'ajoutes "à la volée". Il serait peut-être plus simple de l'insérer dès le départ en le rendant invisible (setVisible(false)). Ensuite, au moment d'appuyer sur le bouton, tu le rendrais visible.

Personnellement, je le ferai comme cela, ou alors si tu tiens vraiment à l'insérer à la volé, je te suggére d'utiliser le méconnu mais pourtant si puissant SpringLayout (existant en 1.4, pas mal en 1.5, génial en 1.6) qui te permet de manipuler tes composants de façon très puissante.

Voili voilà

[#Tout le monde a des idées : la preuve, c'est qu'il y en a de mauvaises]
[#Je ne comprends pas tout, mais je parle de tout : c'est ce qui compte]
vendredi 25 avril 2008 à 15:10:17 | Re : BoxLayout

nanaou

Salut,

Si je met le tableau après c'est parce qu'on l'utilise uniquement suite au chargement d'un fichier. Le tableau est différent selon le fichier...

Voici mon bout de code :
// Le commentaire correspond à ce que je souhaite vraiment effectuer (BoxLayout vertical)
Box box_up=new Box(BoxLayout.X_AXIS);
box_up.add(this.panel_fichier);
box_up.add(this.panel_elements);   // Celui-ci marche très bien
       
this.panel=(JPanel) this.getContentPane();
this.panel.setLayout(new BorderLayout(10, 10));  // changement de marges ne fait rien (40, 40) idem que (10, 10)
//this.panel.setLayout(new BoxLayout(this.panel, BoxLayout.Y_AXIS));
       
this.panel.add(box_up, BorderLayout.NORTH);
//this.panel.add(box_up);

this.validate();
this.pack();

public maj_tableau() {
        this.panel.add(this.scrollpane, BorderLayout.SOUTH); // se met au centre
        //this.panel.add(this.scrollpane)
        this.panel.revalidate();
}

// Si l'on change les valeurs BorderLayout.NORTH et BorderLayout.SOUTH par exemple en NORTH - CENTER, ..., tout se superpose.

Merci



Cette discussion est classée dans : affiche, tableau, panel, ajoute, boxlayout


Répondre à ce message

Sujets en rapport avec ce message

Prob avec des JScrollbar [ par Azdruyel ] Bonjour a tous!!!Alors voila mon prob. J'ai dans un borderlayout au centre un panel qui affiche une imge, et je veux mettre une scrollbar vertical et (Débutant) Action non déclenchée par un bouton [ par ptiniko ] Bonjour à tous,Je sollicite votre aide car j'ai un petit souci. J'ai cherché en vain sur les anciens posts une réponse à ma question (surement du au f Problème d'Affichage dans un Panel [ par Steph115 ] Bonjour,J'utilise une JDialog toute simple avec un JTree et un JPanel.Quand je choisis un élément dans le JTree ca me l'affiche dans le JPanel.Jusque Position sur le panel reste fixe [ par bbagnes ] Bonjour à tous, J'utilise un tableau de bouton que j'ai mis au préalable dans un layout et lorsque je clique sur un bouton il doit disparaitre (setVis lien d'un panel vers un autre dans une applet [ par remy1066 ] salut j'ai créé une applet qui affiche dans un Panel un bouton.en cliquant sur ce bouton, je voudrais qu'il m'affiche un autre Panel dans la meme fene ajouter un objet à un panel [ par monpseudonom ] j'utilise netbeans pour réaliser des interfaces graphique.J'ai inserer un panel de la palette puis j'ai  choisir custom code et j'ai ajouter le code s displayTag [ par skully ] bjr,j'utilise un displaytag ds une page jsp, la taille de mon tableau par page est de (pagesize="10"). je voudrai connaitre la page qui est en cour, p séléction d'un JTable [ par mourdjana14 ] bonjour!je travaille avec deux tableau et je vexu sélectionner un élément du premier tableau pour qu'il s'affiche dans la première case du dexième tab traitement d'image dans une applet [ par maettep ] Bonjour voilà il nous est demandé de réaliser une interface graphique qui charge une image et qui réalise des modifications dessus à l'aide de boutons probleme de l'ajout de la date [ par saratsdi ] stl  les amis,quan j ajoute la date a la base d donne il ajoute tjrs le moi 1 j sai pa ou es le problemesi vou avez une ideeet merci d'avance


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,903 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales