Uvod v BoxLayout na Javi

BoxLayout je standardni upravitelj postavitev, ki je priložen platformi Java. Pomaga pri razporejanju sestavnih delov vodoravno ali navpično znotraj posode. V tem primeru bo razporeditev komponent takšna, čeprav spremenimo velikost okvira. Evertična razporeditev ostane navpična, tudi če pride do velikosti okvirja. Z drugimi besedami, sestavni deli znotraj posode se ne bodo ovili. Za razliko od drugih upraviteljev postavitve BoxLayout konstruktor posreduje zahtevane vsebnike konstruktorju upravitelja postavitve. Konstruktorji, metode in primeri razreda BoxLayout bodo obravnavani v naslednjih razdelkih.

Konstruktorji BoxLayouta na Javi

Za izvajanje razreda BoxLayout v Javi bo uporabljen naslednji konstruktor:

  • javni BoxLayout (vsebnik c, int os)

Dva navedena argumenta sta vsebnik in os, ki pomagata pri ustvarjanju vsebnika z omenjeno osjo. Dva veljavna navodila sta:

  1. Levo proti desni - BoxLayout.X_AXIS
  2. Od zgoraj navzdol - BoxLayout.Y_AXIS

Če bomo konstruktorju posredovali kot BoxLayout.Y_AXIS, se bo prikazala postavitev, kot je naslednja slika (en stolpec).

Če bomo konstruktorju posredovali kot BoxLayout.X_AXIS, se bo prikazala postavitev, kot je naslednja slika (ena vrstica).

Metode razreda BoxLayout v Javi

Spodaj so različne metode razreda boxlayout v javi:

1. addLayoutComponent (Component comp, Object obj)

Namen te metode je dodati omenjeno komponento v vsebnik z navedenim objektom omejitve.

Modifikator in vrsta: nična

2. getLayoutAlignmentX (kontura kontejnerja)

Ta metoda vrne poravnavo posode v levo v desno smer. tj X-os. Vrednost je lahko podana med 0 in 1, kjer je 0 poravnava izvora, 1 je najbolj oddaljena od poravnave in 0, 5 je poravnana po sredini.

Modifikator in vrsta: plovec

3. getLayoutAlignmentY (kontura kontejnerja)

Ta metoda vrne poravnavo posode v smeri od vrha do dna. torej Y-os. Vrednost je lahko podana med 0 in 1, kjer je 0 poravnava izvora, 1 je najbolj oddaljena od poravnave in 0, 5 je poravnana po sredini.

Modifikator in vrsta: plovec

4. največja velikost postavitve (kontura kontejnerja)

Ta metoda vrne največjo vrednost velikosti, ki jo lahko ciljni vsebnik uporabi za postavitev vsebnikov, ki so dodani v njem.

Modifikator in vrsta: plovec

5. minimalnaLayoutSize (kontejner posode)

Ta metoda vrne najmanjšo vrednost velikosti, ki jo lahko ciljni vsebnik uporabi za postavitev vsebnikov, ki so dodani v njem.

Modifikator in vrsta: plovec

6. removeLayoutComponent (Komponenta)

Ta metoda odstrani omenjeno komponento iz postavitve vsebnika.

7. layoutContainer (kontejner zabojnika)

Ta metoda polaga postavitev vsebnika, ko jo pokliče AstraTeh Window Toolkit (AWT) .

8. neveljavna postavitev (Containercontnr)

Ta metoda zavrže predpomnjene informacije postavitve. Z drugimi besedami, razveljavi postavitev.

Primeri razreda BoxLayout v Javi

Zdaj pa si oglejmo nekaj primerov razreda BoxLayout z nekaterimi metodami, razloženimi v zgornjem razdelku.

Primer 1: Java program za ustvarjanje BoxLayouta z 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
)
)

Vzorčni izhod:

Tu bo ustvarjen razred razširjen iz razreda Frame, ki je uvožen iz java.awt. Nato bo s pomočjo ustvarjenega konstruktorja ustvarjena postavitev z omenjeno vsebino, širino in višino.

Primer 2: Java program za ustvarjanje BoxLayouta z 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
)
)

Vzorčni izhod:

Zgornji program je podoben primeru 1, le da ustvarja gumbe v osi Y.

Primer 3: program Java, ki ustvarja gumbe v osi X in osi Y

//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();
)
)

Vzorčni izhod:

Za razliko od primerov 1 in 2 ta program razširja razred JFrame, da bi izvedel BoxLayout. Uporablja se več drugih metod, kot je pack (), createVerticalBox, ki izvajajo iste naloge, kot so v primerih 1 in 2.

Zaključek

BoxLayout je upravitelj postavitve, ki pomaga pri urejanju komponent posode v določeni obliki. tj X in Y os. Za izvedbo tega bo uporabljen konstruktor razreda, ki vsebuje metode, ki izvajajo različne funkcionalnosti.

Priporočeni članki

To je vodnik za BoxLayout na Javi. Tukaj razpravljamo o konstruktorjih, metodah in primerih boxlayouta v Javi s kodami. Če želite izvedeti več, lahko preberete tudi druge naše predlagane članke -

  1. Postavitev v Javi
  2. Postavitev mreže na Javi
  3. Razvrsti po Javi
  4. Destruktor na Javi
  5. Razvrstite v Python
  6. Postavitev HTML-ja