Uvod u BoxLayout na Javi

BoxLayout je standardni menadžer izgleda koji dolazi uz Java platformu. Pomaže u rasporedu komponenti vodoravno ili okomito unutar spremnika. U tom će slučaju raspored komponenti biti takav iako promijenimo veličinu okvira. Vertikalni raspored ostaje vertikalan čak i ako se dogodi promjena veličine okvira. Drugim riječima, komponente unutar spremnika se neće zamotati. Za razliku od ostalih upravitelja izgleda, BoxLayout konstruktor prosljeđuje tražene spremnike konstruktoru izgleda izgleda. Konstruktori, metode i primjeri klase BoxLayout raspravljat će se u sljedećim odjeljcima.

Konstruktori BoxLayouta na Javi

Za implementaciju BoxLayout klase u Javi koristit će se sljedeći konstruktor:

  • javni BoxLayout (spremnik c, int os)

Dva navedena argumenta su spremnik i os koji pomažu u stvaranju spremnika s navedenom osi. Dvije važeće upute su:

  1. Lijevo desno - BoxLayout.X_AXIS
  2. Odozgo prema gore - BoxLayout.Y_AXIS

Ako konstruktoru prolazimo kao BoxLayout.Y_AXIS, pojavit će se izgled poput sljedeće slike (jedan stupac).

Ako konstruktoru prolazimo kao BoxLayout.X_AXIS, pojavit će se izgled poput sljedeće slike (jedan red).

Metode klase BoxLayout u Javi

Ispod su različite metode klase boxlayout u javi:

1. addLayoutComponent (Component comp, Object obj)

Svrha ove metode je dodati spomenutu komponentu u spremnik koristeći navedeni objekt ograničenja.

Modifikator i vrsta: praznina

2. getLayoutAlignmentX (kontura kontejnera)

Ova metoda vraća poravnavanje spremnika ulijevo i udesno. tj. X-os. Vrijednost se može dati između 0 i 1, gdje je 0 poravnanje podrijetla, 1 je najudaljenije poravnanje od izvora i 0, 5 je poravnanje u središtu.

Modifikator i tip: Plovak

3. getLayoutAlignmentY (kontura kontejnera)

Ova metoda vraća poravnavanje spremnika u smjeru od vrha prema dnu. tj. Y-os. Vrijednost se može dati između 0 i 1, gdje je 0 poravnanje podrijetla, 1 je najudaljenije poravnanje od izvora i 0, 5 je poravnanje u središtu.

Modifikator i tip: Plovak

4. maxLayoutSize (kontura kontejnera)

Ova metoda vraća maksimalnu vrijednost veličine koju ciljni spremnik može koristiti za izgled spremnika koji su u njemu dodani.

Modifikator i tip: Plovak

5. minimalLayoutSize (kontura kontejnera)

Ova metoda vraća minimalnu vrijednost veličine koju ciljni spremnik može koristiti za izgled spremnika koji su u njemu dodani.

Modifikator i tip: Plovak

6. removeLayoutComponent (Komponenta)

Ovom metodom uklanja se navedena komponenta iz izgleda spremnika.

7. layoutContainer (kontura kontejnera)

Ova metoda postavlja raspored spremnika kad ga poziva Sažetak alata za prozore (AWT) .

8. nevažeći izgled (Containercontnr)

Ovom se metodom odbacuju keširane informacije izgleda. Drugim riječima, to poništava izgled.

Primjeri BoxLayout klase na Javi

Pogledajmo neke primjere BoxLayout klase s nekim od metoda objašnjenih u gornjem odjeljku.

Primjer 1: Java program za stvaranje BoxLayouta s X-Axisom

//Java program to demonstrate BoxLayout with X Axis
import java.awt.*;
import javax.swing.*;
//A subclass BoxLayoutProgram that extends Frame Class
public class BoxLayoutProgram extends Frame (
Button buttons(); //Button reference variable
//Constructor of BoxLayoutProgram
public BoxLayoutProgram ()
(
buttons = new Button (5);
for (int i = 0;i<5;i++)
(
buttons(i) = new Button ("Box" + (i + 1));
add (buttons(i)); //adds button
)
setLayout (new BoxLayout (this, BoxLayout.X_AXIS)); //sets the layout by mentioning the axis
setSize(400, 400); //sets the width and height of the frame
setVisible(true); //sets the GUI visible to user
)
public static void main(String args())(
BoxLayoutProgram b=new BoxLayoutProgram(); //object of the class
)
)

Uzorak izlaza:

Ovdje će se kreirana klasa proširiti iz klase Frame koja se uvozi iz java.awt. Tada će se stvoriti izgled s navedenim sadržajem, širinom i visinom uz pomoć konstruktora koji je stvoren.

Primjer 2: Java program za kreiranje BoxLayouta s Y-Axisom

//Java program to demonstrate BoxLayout with Y Axis
import java.awt.*;
import javax.swing.*;
//A subclass BoxLayoutProgram that extends Frame Class
public class BoxLayoutProgram extends Frame (
Button buttons(); //Button reference variable
//Constructor of BoxLayoutProgram
public BoxLayoutProgram ()
(
buttons = new Button (5);
for (int i = 0;i<5;i++)
(
buttons(i) = new Button ("Box" + (i + 1));
add (buttons(i)); //adds button
)
setLayout (new BoxLayout (this, BoxLayout.Y_AXIS)); //sets the layout by mentioning the axis
setSize(400, 400); //sets the width and height of the frame
setVisible(true); //sets the GUI visible to user
)
public static void main(String args())(
BoxLayoutProgram b=new BoxLayoutProgram(); //object of the class
)
)

Uzorak izlaza:

Gornji program sličan je primjeru 1, osim što stvara gumbe u osi Y.

Primjer 3: Java program koji stvara gumbe i u X i Y osi

//Java program that creates buttons in both X axis and Y axis
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//Class that extends JFrame Class
public class BoxLayoutXY extends JFrame
(
//Constructor
public BoxLayoutXY()
(
//helps in adding the object to the container
Container cp = getContentPane();
//sets the layout of container as FlowLayout where the components are placed in a line
cp.setLayout(new FlowLayout());
//create an object of the box class
Box hbox = Box. createHorizontalBox ();
//create an object of the box class
Box vbox = Box. createVerticalBox ();
//add horizontal and vertical components to the container
hbox.add(new JButton("Horizontal Button 1"));
hbox.add(new JButton("Horizontal Button 2"));
hbox.add(new JButton("Horizontal Button 3"));
vbox.add(new JButton("Vertical Button 1"));
vbox.add(new JButton("Vertical Button 2"));
vbox.add(new JButton("Vertical Button 3"));
cp.add(hbox);
cp.add(vbox);
//method similar to setsize that places the content in preferred size
pack();
//GUI visible to user
setVisible(true);
)
public static void main(String args())
(
//calls the constructor of the class
new BoxLayoutXY();
)
)

Uzorak izlaza:

Za razliku od primjera 1 i 2, ovaj program proširuje klasu JFrame kako bi implementirao BoxLayout. Koristi se nekoliko drugih metoda kao što su pack (), createVerticalBox koji izvode iste zadatke kao u primjerima 1 i 2.

Zaključak

BoxLayout je upravitelj izgleda koji pomaže u uređenju komponenti spremnika u navedenom formatu. tj. X i Y os. Da bi se to implementiralo, koristit će se konstruktor klase koji sadrži metode koje izvode različite funkcionalnosti.

Preporučeni članci

Ovo je vodič za BoxLayout u Javi. Ovdje razgovaramo o Konstruktorima, metodama i primjerima boxlayouta u Javi s kodovima. Možete i proći naše druge predložene članke da biste saznali više -

  1. Izgled u Javi
  2. Raspored rešetke na Javi
  3. Poredaj u Javi
  4. Destruktor na Javi
  5. Poredajte u Python
  6. Izgled HTML-a

Kategorija: