Uvod u GridBagLayout na Javi

GridBagLayout je jedan od najsloženijih, najsnažnijih i najsloženijih upravitelja izgleda koji Java nudi. GridBagLayout poravnava komponente okomito, vodoravno ili duž osnovne linije. Dijelovi mogu biti iste širine ili ne, ovisno o zahtjevu. Oni održavaju i upravljaju dinamičkim ćelijama u kojima se područje prikaza sastoji od jedne ili više ćelija. Te su komponente povezane s primjerkom GridBagConstraints u kojem objekti ograničenja pomažu u organiziranju područja prikaza komponenti na mreži. GridBagLayout je u paketu java.awt. Pogledajmo konstruktor, metode i implementaciju GridBagLayouta u sljedećim odjeljcima.

Konstruktori GridBagLayout u Javi

Java.awt.GridBagLayout deklariran je pomoću sljedeće sintakse.

public class GridBagLayout extends Object implements LayoutManager2, Serializable

GridBagLayout () je konstruktor GridBagLayout koji pomaže u stvaranju upravitelja izgleda mrežnog vreća. Prvo, kreiramo objekt za klasu GridBagLayout uz pomoć konstruktora bez argumenata

GridBagLayout obj = new GridBagLayout();
setLayout(obj);

Pogledajmo neka od polja za klasu java.awt.GridBagLayout.

  • PREFERRED_SIZE

Od komponente određuje preferiranu veličinu rešetke. Ovdje također može biti jaz koji se mora koristiti za određenu vrijednost raspona.

  • DEFAULT_SIZE

Određuje veličinu rešetke iz komponente. Ovdje također može biti jaz koji se mora koristiti za određenu vrijednost raspona.

  • defaultConstraints

Ovdje se zadržava instanca ograničenja u vrećici koja sadrži zadane vrijednosti.

  • layoutInfo

Pojedinosti izgleda Gridbaga se drže u ovome.

  • rowWeights

Ovdje se drže prevladavanja utega s utezima.

  • MAXGRIDSIZE

Pomaže u nazadnoj kompatibilnosti.

  • rowHeights

Poništavanja se drže na minimalnim visinama retka.

Metode GridBagLayout u Javi

Slijedi nekoliko metoda GridBagLayout-a koje se mogu koristiti u različite svrhe.

  • removeLayoutComponent (Component cmpn)

Iz izgleda se uklanja navedena komponenta.

  • addLayoutComponent (Component cmpn, Objcons za objekte)

Navedeni objekt ograničenja dodaje se izgledu navedene komponente.

  • getLayoutAlignmentY (kontejner cnt)

Vraća se poravnanje duž osi y.

  • addLayoutComponent (Naziv niza, Component cmpn)

Navedeni objekt ograničenja dodaje se izgledu određene komponente s određenim nazivom.

  • toString ()

Vrijednosti u rasporedu vreća s mrežom vraćaju se u prikazu niza.

  • getLayoutAlignmentX (kontejner cnt)

Vraća se poravnanje duž osi x.

  • getConstraints (Component cmpn)

Vraćena su navedena ograničenja komponente.

  • maxLayoutSize (kontejner cnt)

Komponente u spremniku vraćaju se s maksimalnim dimenzijama.

  • minimalLayoutSize (cntmin kontejnera)

Dijelovi u spremniku vraćaju se s minimalnim dimenzijama.

  • preferenceLayoutSize (cntpref kontejnera)

Komponente u spremniku vraćaju se s preferiranim dimenzijama.

  • aranžmanGrid (kontejner cnt)

Pomaže u uređenju rešetke.

  • prilagodi gravitaciju (GridBagConstraints cn, pravokutnik)

Ovisno o geometriji ograničenja, ova metoda prilagođava širinu, x, visinu i y pravilnim vrijednostima.

  • getLayoutDimensions ()

Širina stupca i visina redova određuju se ovom metodom.

  • getLayoutInfo (cnt kontejnera, int sizeflag)

On je zastario i koristi se za povratnu kompatibilnost.

  • getLayoutOrigin ()

Utvrđuje podrijetlo područja izgleda u grafičkom koordinatnom prostoru ciljanog spremnika.

  • getLayoutWeights ()

Težine stupa i visina redova određuju se ovom metodom.

  • getMinSize (Container cnt, GridBagLayoutInfo inf)

Na temelju detalja dobivenih od getLayoutInfo vraća se minimalna veličina glavnog računala.

  • invalidateLayout (Kontejnerski cnt)

Ako su neke informacije iz predmemoriranja prisutne u upravitelju izgleda, on poništava izgled.

  • layoutContainer (kontejner cnt)

Navedeni spremnik postavit će se pomoću ovog rešetkastog rasporeda vrećice.

  • Položaj točke (int x, int y)

Ovom se metodom identificira stanica koja sadrži spomenutu točku pomoću x i y.

  • lookupKonstracije (Component cmp)

Dohvaćena su ograničenja navedene komponente.

  • setConstraints (Component cmp, GridBagConstraints const)

Ograničenja spomenute komponente postavljena su u izgledu.

Program za implementaciju GridBagLayout u Javi

Sada ćemo vidjeti programe za implementaciju GridBagLayout u Javi.

Program # 1

// Java program to implement GridBagLayout layout manager
//import the packages needed
import java.awt.Button;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import javax.swing.*;
//GridExample class extends JFrame
public class GridExample extends JFrame(
//main method
public static void main(String() args) (
//object of the class GridExample
GridExample ge = new GridExample();
)
//constructor of class GridExample
public GridExample() (
// Object of GridBagLayout
GridBagLayout gl = new GridBagLayout();
// Object of GridBagConstraints
GridBagConstraints gc = new GridBagConstraints();
// GridBagLayout is set
setLayout(gl);
// Method to set JFrame Title.
setTitle("Example for GridBag Layout ");
GridBagLayout ll = new GridBagLayout();
this.setLayout(ll);
//components in horizontal
gc.fill = GridBagConstraints.HORIZONTAL;
//left most row and top most column
gc.gridx = 0;
gc.gridy = 0;
//Button A added
this.add(new Button("Button A"), gc);
gc.gridx = 1;
gc.gridy = 0;
//Button B added
this.add(new Button("Button B"), gc);
gc.fill = GridBagConstraints.HORIZONTAL;
//increase component height by 20 pixels
gc.ipady = 20;
gc.gridx = 0;
gc.gridy = 1;
//Button C added
this.add(new Button("Button C"), gc);
gc.gridx = 1;
gc.gridy = 1;
///Button D added
this.add(new Button("Button D"), gc);
gc.gridx = 0;
gc.gridy = 2;
gc.fill = GridBagConstraints.HORIZONTAL;
gc.gridwidth = 2;
//Button E added
this.add(new Button("Button E"), gc);
// set the size
setSize(200, 300);
setPreferredSize(getSize());
//GUI visible to user
setVisible(true);
//exit on clicking close button
setDefaultCloseOperation(EXIT_ON_CLOSE);
)
)

Uzorak izlaza:

Ovdje se stvara GridBagLayout s pet gumba poput A, B, C, D i E. Nekoliko metoda se koristi za postavljanje veličine, naslova, vidljivosti GUI-ja itd.

Program # 2

//Java program to implement GridBagLayout
import java.awt.*;
import javax.swing.*;
public class GridExample (
//main method
public static void main(String() args) (
//object of JFrame
JFrame jf = new JFrame();
//exit on clicking close button
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//object of container
Container cn = jf.getContentPane();
//set layout
cn.setLayout(new GridBagLayout());
//object of constraints
GridBagConstraints gc = new GridBagConstraints();
gc.gridx = 0;
gc.gridy = GridBagConstraints.RELATIVE;
cn.add(new JButton("Button A"));
cn.add(new JButton("Button B"));
gc.fill = GridBagConstraints.HORIZONTAL;
cn.add(new JButton("Button c"));
// set the size
jf.setSize(400, 300);
//GUI visible to user
jf.setVisible(true);
)
)

Uzorak izlaza:

Ovaj program implementira GridBagLayout u drugoj metodi. No, ovdje naslov nije postavljen i prisutna su samo 3 gumba.

Zaključak

GridBagLayout je jedan od moćnih, fleksibilnih i složenih izgleda menadžera u Javi koji se nudi java.awt paketom. Poravnava komponente okomito, vodoravno ili duž crte. Sintaksa, konstruktor, metode i implementacija GridBagLayout-a objašnjeni su u ovom dokumentu.

Preporučeni članci

Ovo je vodič za GridBagLayout na Javi. Ovdje smo raspravljali o metodama i programu za implementaciju GridBagLayout-a u Javi. Možete također pogledati sljedeće članke da biste saznali više -

  1. Izgled u Javi
  2. JDialog na Javi
  3. Java primjedbe
  4. BorderLayout u Javi
  5. Alati za implementaciju Java
  6. JFrame u Javi
  7. Izgled HTML-a

Kategorija: