Una utile divisione empirica tra le componenti swing in Java é quella tra componenti interattive (JButton, JCheckBox, JTextField, ...) e componenti di background (JFrame e JPanel).
Tipicamente le seconde stanno sullo sfondo e le prime sono messe sopra a queste.
Il layout manager é il processo che decide come le componenti vengono piazzate dentro un background.
I tre layout manager più comuni:
- BorderLayout: divide il background in cinque regioni, é possibile aggiungere una sola componente in ognuna di queste regioni; é il default per una frame.
- FlowLayout: agisce come un word processor con il "word wrap" attivo. Ovvero le componenti vengono messe una a fianco all'altra finché ci stanno su una "riga". E poi si va "a capo"; é il default per un pannello.
- BoxLayout: simile al FlowLayout, ma normalmente opera verticalmente ed é possibile forzare l'inizio di una "nuova riga".
import java.awt.BorderLayout;
import javax.swing.*;
public class Border {
public Border() {
JFrame f = new JFrame();
f.getContentPane().add(BorderLayout.CENTER, new JButton("Center"));
f.getContentPane().add(BorderLayout.EAST, new JButton("East"));
f.getContentPane().add(BorderLayout.NORTH, new JButton("North"));
f.getContentPane().add(BorderLayout.WEST, new JButton("West"));
f.getContentPane().add(BorderLayout.SOUTH, new JButton("South"));
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(300, 300);
f.setVisible(true);
}
public static void main(String[] args) {
new Border();
}
}
Nessun commento:
Posta un commento