Classe GridBagLayout AWT
introduzione
La classe GridBagLayout dispone i componenti in modo orizzontale e verticale.
Dichiarazione di classe
Di seguito è riportata la dichiarazione per java.awt.GridBagLayout classe:
public class GridBagLayout
extends Object
implements LayoutManager2, Serializable
Campo
Di seguito sono riportati i campi per java.awt.BorderLayout classe:
double[] columnWeights - Questo campo contiene le sostituzioni ai pesi delle colonne.
int[] columnWidths - Questo campo contiene le sostituzioni alla larghezza minima della colonna.
protected Hashtable comptable - Questa tabella hash mantiene l'associazione tra un componente e i suoi vincoli gridbag.
protected GridBagConstraints defaultConstraints - Questo campo contiene un'istanza di vincoli gridbag contenente i valori predefiniti, quindi se un componente non dispone di vincoli gridbag ad esso associati, al componente verrà assegnata una copia di defaultConstraints.
protected java.awt.GridBagLayoutInfo layoutInfo - Questo campo contiene le informazioni sul layout per il gridbag.
protected static int MAXGRIDSIZE - Il numero massimo di posizioni della griglia (sia orizzontalmente che verticalmente) che possono essere stabilite dal layout della griglia.
protected static int MINSIZE - La griglia più piccola che può essere tracciata dalla disposizione del sacco a griglia.
protected static int PREFERREDSIZE - La dimensione della griglia preferita che può essere definita dal layout del sacchetto della griglia.
int[] rowHeights - Questo campo contiene gli override delle altezze minime delle righe.
double[] rowWeights - Questo campo contiene le sostituzioni dei pesi delle righe.
Costruttori di classi
SN | Costruttore e descrizione |
---|---|
1 | GridBagLayout() Crea un gestore del layout del sacchetto della griglia. |
Metodi di classe
SN | Metodo e descrizione |
---|---|
1 | void addLayoutComponent(Component comp, Object constraints) Aggiunge il componente specificato al layout, utilizzando l'oggetto vincoli specificato. |
2 | void addLayoutComponent(String name, Component comp) Aggiunge il componente specificato con il nome specificato al layout. |
3 | protected void adjustForGravity(GridBagConstraints constraints, Rectangle r) Regola i campi x, y, larghezza e altezza sui valori corretti a seconda della geometria del vincolo e dei pad. |
4 | protected void AdjustForGravity(GridBagConstraints constraints, Rectangle r) Questo metodo è obsoleto e viene fornito solo per compatibilità con le versioni precedenti; il nuovo codice dovrebbe invece chiamare AdjustForGravity. |
5 | protected void arrangeGrid(Container parent) Disegna la griglia. |
6 | protected void ArrangeGrid(Container parent) Questo metodo è obsoleto e viene fornito solo per compatibilità con le versioni precedenti; il nuovo codice dovrebbe invece chiamare organizzareGrid. |
7 | GridBagConstraints getConstraints(Component comp) Ottiene i vincoli per il componente specificato. |
8 | float getLayoutAlignmentX(Container parent) Restituisce l'allineamento lungo l'asse x. |
9 | float getLayoutAlignmentY(Container parent) Restituisce l'allineamento lungo l'asse y. |
10 | int[][] getLayoutDimensions() Determina la larghezza delle colonne e l'altezza delle righe per la griglia di layout. |
11 | protected java.awt.GridBagLayoutInfo getLayoutInfo(Container parent, int sizeflag) Compila un'istanza di GridBagLayoutInfo per il set corrente di elementi figlio gestiti. |
12 | protected java.awt.GridBagLayoutInfo GetLayoutInfo(Container parent, int sizeflag) Questo metodo è obsoleto e viene fornito solo per compatibilità con le versioni precedenti; il nuovo codice dovrebbe invece chiamare getLayoutInfo. |
13 | Point getLayoutOrigin() Determina l'origine dell'area di layout, nello spazio delle coordinate grafiche del contenitore di destinazione. |
14 | double[][] getLayoutWeights() Determina i pesi delle colonne e delle righe della griglia di layout. |
15 | protected Dimension getMinSize(Container parent, java.awt.GridBagLayoutInfo info) Calcola la dimensione minima del master in base alle informazioni da getLayoutInfo (). |
16 | protected Dimension GetMinSize(Container parent, java.awt.GridBagLayoutInfo info) Questo metodo è obsoleto e viene fornito solo per compatibilità con le versioni precedenti; il nuovo codice dovrebbe invece chiamare getMinSize. |
17 | void invalidateLayout(Container target) Invalida il layout, indicando che se il gestore del layout ha informazioni memorizzate nella cache, dovrebbe essere eliminato. |
18 | void layoutContainer(Container parent) Disegna il contenitore specificato utilizzando questo layout del sacco a griglia. |
19 | Point location(int x, int y) Determina quale cella nella griglia di layout contiene il punto specificato da (x, y). |
20 | protected GridBagConstraints lookupConstraints(Component comp) Recupera i vincoli per il componente specificato. |
21 | Dimension maximumLayoutSize(Container target) Restituisce le dimensioni massime per questo layout dati i componenti nel contenitore di destinazione specificato. |
22 | Dimension minimumLayoutSize(Container parent) Determina la dimensione minima del contenitore padre utilizzando questo layout del sacchetto della griglia. |
23 | Dimension preferredLayoutSize(Container parent) Determina la dimensione preferita del contenitore padre utilizzando questo layout del sacchetto della griglia. |
24 | void removeLayoutComponent(Component comp) Rimuove il componente specificato da questo layout. |
25 | void setConstraints(Component comp, GridBagConstraints constraints) Imposta i vincoli per il componente specificato in questo layout. |
26 | String toString() Restituisce una rappresentazione di stringa dei valori di questo layout del sacchetto della griglia. |
Metodi ereditati
Questa classe eredita i metodi dalle classi seguenti:
java.lang.Object
Esempio di GridBagLayout
Crea il seguente programma java usando qualsiasi editor di tua scelta, diciamo D:/ > AWT > com > tutorialspoint > gui >
AwtLayoutDemo.javapackage com.tutorialspoint.gui;
import java.awt.*;
import java.awt.event.*;
public class AwtLayoutDemo {
private Frame mainFrame;
private Label headerLabel;
private Label statusLabel;
private Panel controlPanel;
private Label msglabel;
public AwtLayoutDemo(){
prepareGUI();
}
public static void main(String[] args){
AwtLayoutDemo awtLayoutDemo = new AwtLayoutDemo();
awtLayoutDemo.showGridBagLayoutDemo();
}
private void prepareGUI(){
mainFrame = new Frame("Java AWT Examples");
mainFrame.setSize(400,400);
mainFrame.setLayout(new GridLayout(3, 1));
mainFrame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent){
System.exit(0);
}
});
headerLabel = new Label();
headerLabel.setAlignment(Label.CENTER);
statusLabel = new Label();
statusLabel.setAlignment(Label.CENTER);
statusLabel.setSize(350,100);
msglabel = new Label();
msglabel.setAlignment(Label.CENTER);
msglabel.setText("Welcome to TutorialsPoint AWT Tutorial.");
controlPanel = new Panel();
controlPanel.setLayout(new FlowLayout());
mainFrame.add(headerLabel);
mainFrame.add(controlPanel);
mainFrame.add(statusLabel);
mainFrame.setVisible(true);
}
private void showGridBagLayoutDemo(){
headerLabel.setText("Layout in action: GridBagLayout");
Panel panel = new Panel();
panel.setBackground(Color.darkGray);
panel.setSize(300,300);
GridBagLayout layout = new GridBagLayout();
panel.setLayout(layout);
GridBagConstraints gbc = new GridBagConstraints();
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.gridx = 0;
gbc.gridy = 0;
panel.add(new Button("Button 1"),gbc);
gbc.gridx = 1;
gbc.gridy = 0;
panel.add(new Button("Button 2"),gbc);
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.ipady = 20;
gbc.gridx = 0;
gbc.gridy = 1;
panel.add(new Button("Button 3"),gbc);
gbc.gridx = 1;
gbc.gridy = 1;
panel.add(new Button("Button 4"),gbc);
gbc.gridx = 0;
gbc.gridy = 2;
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.gridwidth = 2;
panel.add(new Button("Button 5"),gbc);
controlPanel.add(panel);
mainFrame.setVisible(true);
}
}
Compilare il programma utilizzando il prompt dei comandi. Vai aD:/ > AWT e digita il seguente comando.
D:\AWT>javac com\tutorialspoint\gui\AwtlayoutDemo.java
Se non viene visualizzato alcun errore, significa che la compilazione è riuscita. Esegui il programma utilizzando il seguente comando.
D:\AWT>java com.tutorialspoint.gui.AwtlayoutDemo
Verificare il seguente output