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:
- Lijevo desno - BoxLayout.X_AXIS
- 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 -
- Izgled u Javi
- Raspored rešetke na Javi
- Poredaj u Javi
- Destruktor na Javi
- Poredajte u Python
- Izgled HTML-a