Recherche…


Mise en page frontière

import static java.awt.BorderLayout.*;
import javax.swing.*;
import java.awt.BorderLayout;

JPanel root = new JPanel(new BorderLayout());

root.add(new JButton("East"), EAST);
root.add(new JButton("West"), WEST);
root.add(new JButton("North"), NORTH);
root.add(new JButton("South"), SOUTH);
root.add(new JButton("Center"), CENTER);

JFrame frame = new JFrame();
frame.setContentPane(root);
frame.pack();
frame.setVisible(true);

La disposition des bordures est l'un des gestionnaires de mise en page les plus simples. La façon d'utiliser un gestionnaire de disposition est de définir le gestionnaire d'un JPanel .

Les emplacements de mise en page de bordure suivent les règles suivantes:

  • Nord et Sud: hauteur préférée
  • Est et Ouest: largeur préférée
  • Centre: espace restant maximal

Dans BorderLayout emplacements peuvent également être vides. Le gestionnaire de mise en page compense automatiquement les espaces vides, en les redimensionnant si nécessaire.

Voici à quoi ressemble cet exemple:

entrer la description de l'image ici

Disposition de flux

import javax.swing.*;
import java.awt.FlowLayout;

public class FlowExample {
    public static void main(String[] args){
        SwingUtilities.invokeLater(new Runnable(){

            @Override
            public void run(){
                JPanel panel = new JPanel();
                panel.setLayout(new FlowLayout());

                panel.add(new JButton("One"));
                panel.add(new JButton("Two"));
                panel.add(new JButton("Three"));
                panel.add(new JButton("Four"));
                panel.add(new JButton("Five"));

                JFrame frame = new JFrame();
                frame.setContentPane(Panel);
                frame.pack();
                frame.setVisible(true);
            }
        });
    }
}

La disposition de flux est le gestionnaire de disposition le plus simple que Swing a à offrir. La disposition de flux essaie de tout placer sur une ligne et, si la disposition déborde de la largeur, elle enveloppera la ligne. L'ordre est spécifié par l'ordre dans lequel vous ajoutez des composants à votre panneau.

Captures d'écran:

entrer la description de l'image ici

entrer la description de l'image ici

Disposition de la grille

GridLayout vous permet d’organiser les composants sous la forme d’une grille.

Vous passez le nombre de lignes et de colonnes que vous voulez que la grille GridLayout au constructeur de GridLayout . Par exemple, le new GridLayout(3, 2) créera un GridLayout avec 3 lignes et 2 colonnes.

Lors de l'ajout de composants à un conteneur avec GridLayout , les composants seront ajoutés ligne par ligne, de gauche à droite:

import javax.swing.*;
import java.awt.GridLayout;

public class Example {
    public static void main(String[] args){
        SwingUtilities.invokeLater(Example::createAndShowJFrame);
    }

    private static void createAndShowJFrame(){
        JFrame jFrame = new JFrame("Grid Layout Example");

        // Create layout and add buttons to show restraints
        JPanel jPanel = new JPanel(new GridLayout(2, 2));
        jPanel.add(new JButton("x=0, y=0"));
        jPanel.add(new JButton("x=1, y=0"));
        jPanel.add(new JButton("x=0, y=1"));
        jPanel.add(new JButton("x=1, y-1"));

        jFrame.setContentPane(jPanel);
        jFrame.pack();
        jFrame.setLocationRelativeTo(null);
        jFrame.setVisible(true);
    }
}

Cela crée et affiche un JFrame qui ressemble à:

entrer la description de l'image ici

Une description plus détaillée est disponible: GridLayout



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow