Bevezetés a BorderLayout alkalmazásba Javaban
A BorderLayout Java-ban vagy az Layout manager egy olyan objektum, amely minden tárolóobjektum rendelkezik, amely szabályozza az elrendezését, azaz az összetevők méretét és helyzetét. Laikus nyelvben ezeket az elrendezéskezelőket az alkatrészek meghatározott vagy meghatározott módon történő elrendezésére használják. A „LayoutManager” interfészként mondható el, amelyet az összes osztály megvalósít. Van néhány AWT és SWING osztály, amelyet általános elrendezés-kezelőként biztosítottak. Néhányan az alábbiakban vannak felsorolva:
- BorderLayout
- BoxLayout
- SpringLayout
- FlowLayout
- GroupLayout
- GridLayout stb
Mielőtt a BorderLayout-ba költözne, tegyük fel, hogy megvitassunk néhány pontot.
Szinte minden a számítógépes világban hierarchikusan van megszervezve, a jobb tárolás érdekében, vagy egy egyszerű visszakeresési rendszer létrehozása érdekében. Az elérhető AWT osztályok segítségével grafikus felhasználói felületek létrehozásához használt elrendezéskezelők egy ilyen hierarchikus rendszer részét képezik. A Containment Hierarchy név alatt megy. Noha ez a cikk a rendelkezésre álló LayoutManager egyik, a BorderLayout néven fókuszál, korábban tudnunk kell, hol áll a BorderLayout ebben a hierarchiában. A keretekben, GUI-összetevőkben, tárolókban stb. Futó faszerkezetünk kezdődik:
- Először egy felső szintű konténer vagy felső szintű konténerosztály, például JFrame, JApplet vagy JDialog, amely ennek a elszigetelési hierarchiának a gyökereként működik.
- Másodszor, ahhoz, hogy egy elem GUI-összetevőként jelenjen meg a képernyőn, azt be kell vonni a visszatartási hierarchiába.
- Harmadszor, az egyik összetevőnek csak egyetlen tartályban kell lennie, vagy csak abban kell lennie.
- Negyedszer, minden felső szintű tárolónak tartalmi ablaka lesz, lazán szólva, minden (közvetlenül vagy közvetetten látható) grafikus felhasználói felület ezen a tartalomtáblán található.
Mi a BorderLayout?
A BorderLayout osztály az elrendezéskezelő osztályok egyike, amelyet alapértelmezett elrendezésnek tekintnek az ablakobjektumok számára. Az olyan ablakobjektumok, mint a JFrame, JWindow, JDialog, ezt az osztályt használják, hogy GUI-összetevőként jelenjenek meg. A BorderLayout egy tároló elrendezésére szolgál, azaz összetevőinek rendezésére és átméretezésére. A szegélyelrendezés ezeket az összetevőket öt különböző régióba rendezi. Ötből négy régiót vagy területet nevezik északnak, délnek, keletnek és nyugatnak, a középső régiót pedig központnak. Minden régió csak egy komponenst tartalmazhat. A szegélyelrendezés az összetevők pozicionálásához használt állandók gyűjteményét tartalmazza. Az itt tárgyalt régiók azonosíthatók egy megfelelő NORTH, DÉL, KEL, WEST nevű állandóval és a középső régió állandójával, mint CENTER. Ezeket az állandókat egy komponens hozzáadásakor szegélyelrendezéssel használjuk. Az alábbiakban felsoroljuk a kódban használt egyes régiók állandóit:
- nyilvános statikus végleges int NORTH: Az északi elrendezési állandó a tartály tetején.
- nyilvános statikus végleges int DÉL: A déli elrendezési állandó a tartály alján.
- nyilvános statikus végleges int KÖZPONT: A tároló közepén a középső elrendezés állandó.
- nyilvános statikus végleges int WEST: A nyugati elrendezési állandó a tartály jobb oldalán.
- nyilvános statikus végleges int EAST: A keleti elrendezési állandó a konténer bal oldalán.
A fent felsorolt állandók mellett a BorderLayout más pozicionálási állandókat is nyújt, például PAGE_START, PAGE_END stb.
BorderLayout konstruktorok
A BorderLayout konstruktorok hozzászoktak új szegélyelrendezések létrehozásához résekkel vagy rések nélkül az összetevők között. A szegélyelrendezés kivitelezője rés- és résparamétereket használ a vízszintes és a függőleges rések meghatározására az összetevők között. A szegélyelrendezés kivitelezőit az alábbiakban tárgyaljuk:
Egyedi megbeszéléseket mutatunk be példáikkal együtt.
1. BorderLayout ()
A BorderLayout osztály szegélyelrendezés létrehozására szolgál, de az összetevők közötti rések nélkül. Az alábbiakban bemutatunk egy példakódot a BorderLayout () konstruktor segítségével. A következő program összetevőket hoz létre egy JFrame-ben, amelynek példányosztálya 'border'. Az alábbi képernyőképen (a kód után) öt régió található.
Kódunk öt tételt hozott létre öt JButton használatával, majd ezeket hozzáadjuk az elrendezéshez vagy a JFrame-hoz egy add () módszer használatával. A JFrame méretét és láthatóságát külön kell meghatározni. A setSize () metódust használják a keret méretének beállításához, és a set láthatóság () metódust használják a keret láthatóságának beállításához.
Kód
//Java Program illustrating the BorderLayout
import java.awt.*;
import javax.swing.*;
public class border
(
JFrame JF;
border()
(
JF=new JFrame(); //JFrame object
//Lying at top, will be the button named 'North'
JButton b1=new JButton("NORTH");
//Lying at bottom, will be the button named 'South'
JButton b2=new JButton("SOUTH");
//Lying at left, will be the button named 'East'
JButton b3=new JButton("EAST");
//Lying at right, will be the button named 'West'
JButton b4=new JButton("WEST");
//In the center, will be the button named 'Center'
JButton b5=new JButton("CENTER");
//Adding our buttons
JF.add(b1, BorderLayout.NORTH);
JF.add(b2, BorderLayout.SOUTH);
JF.add(b3, BorderLayout.EAST);
JF.add(b4, BorderLayout.WEST);
JF.add(b5, BorderLayout.CENTER);
//Function to set size of the Frame
JF.setSize(300, 300);
//Function to set visible status of the frame
JF.setVisible(true);
)
//Driver Code
public static void main(String() args)
(
//Calling the constructor
new border();
)
)
Az alábbi képernyőképen láthatja, hogyan néz ki a kód a szövegszerkesztőben. Az Eclipse-t használtam szövegszerkesztőként.
A kód futtatásakor a következő kimenet jelenik meg.
Kimenet:
2. BorderLayout (int hgap, int vgap)
A BorderLayout (int hgap, int vgap) szövege szintén meg van írva, mivel a BorderLayout (int, int) szegélyelrendezést hoz létre az adott vízszintes (hgap) és függőleges (vgap) hézagokkal vagy szóközökkel, az alábbiak között egy példakód a BorderLayout használatával ( int, int) konstruktor. A következő program összetevőket hoz létre egy JFrame-ben, amelynek példányosztálya a fentiekhez hasonlóan „szegély”, de függőleges és vízszintes résekkel. Láthatja az alábbi képernyőképen (a kód után).
Kódunk öt régiót hozott létre, amelyek között rések vannak, a vgap és a hgap paraméterekkel a BorderLayout () -ben. A JFrame méretét és láthatóságát ismét külön kell meghatározni. A setSize () metódust használják a keret méretének beállításához, és a set láthatóság () metódust használják a keret láthatóságának beállításához.
Láthatja a keret létrehozásának kódját a BorderLayout használatával, a vgap és a hgap paraméterekkel, hézagokat vagy tereket hozva létre a régiók között:
Kód
//Java Program illustrating the BorderLayout with SPACES between COMPONENTS
import java.awt.*;
import javax.swing.*;
import java.awt.BorderLayout;
import java.awt.Color;
public class borderlayout_spaces extends Frame
(
public borderlayout_spaces(String title)
(
super(title);
setLayout(new BorderLayout(20, 30));
//setBackground(Color.RED);
//Lying at top, will be the button named 'North'
JButton b1=new JButton("North");
add(b1, BorderLayout.NORTH);
//Lying at left, will be the button named 'East'
JButton b2=new JButton("EAST");
add(b2, BorderLayout.EAST);
//In the center, will be the button named 'Center'
JButton b3=new JButton("CENTER");
add(b3, BorderLayout.CENTER);
//Lying at right, will be the button named 'West'
JButton b4=new JButton("WEST");
add(b4, BorderLayout.WEST);
//Lying at bottom, will be the button named 'South'
JButton b5=new JButton("SOUTH");
add(b5, BorderLayout.SOUTH);
)
//Driver Code
public static void main(String() args)
(
//Calling the constructor
borderlayout_spaces screen =
new borderlayout_spaces("Border Layout");
screen.setSize(300, 300); //Function to set size of the Frame
screen.setVisible(true); //Function to set visible status of
the frame
)
)
Az alábbi képernyőképen láthatja, hogyan néz ki a kód a szövegszerkesztőben.
A „setLayout (új BorderLayout (20, 30))” kódsor a kimenetet az alább látható képen mutatja. Itt 20 a vízszintes tér, a 30 pedig a függőleges tér.
A kód futtatásakor a következő kimenet jelenik meg.
Kimenet:
Kipróbálhat más tulajdonságokat is, például beállíthatja a háttér színét. A fenti kódban, ha egy megjegyzett kódvonalat „setBackground (Color.RED);” néven látsz, ha ezt a kódot megkísérelte meg nem kommentálva, akkor a keret az alábbiak szerint jelenik meg:
Vannak más, általánosan használt módszerek a szegélyelrendezés mellett, például:
- toString (): Visszaad egy karakterláncot, amely a szegély elrendezésének állapotát ábrázolja.
- getVgap (): Visszaadja a függőleges rést az összetevő között.
- getHgap (): Visszaadja a vízszintes rést az elem között.
- setVgap (int vgap): Ezzel beállíthatja az összetevő közötti függőleges rést.
- setHgap (int hgap): Ezzel beállítják az összetevők közötti vízszintes rést stb.
Ez a cikk néhány nagy teljesítményű LayoutManagert ismertet, amelyek felhasználják a Windows keretek és a felhasználói felületek elrendezését. A cikk emellett két különféle konstruktor, a java.awt.BorderLayout osztály és a java.awt.BorderLayout (int, int) osztály ismert kézi elrendezésének írásával foglalkozott, amelyek kihívást jelentettek. De meg kell próbálnod adni. Ha nem, akkor kipróbálhatja a java.awt.GroupLayout elrendezéskezelőt. Használhat egy építési szerszámot az elrendezés-kezelővel együtt, például a NetBeans IDE-vel, amely kiváló eszköz a felhasználói felület létrehozásához.
Ajánlott cikkek
Ez egy útmutató a BorderLayout használatához Java-ban. Itt a BorderLayout bevezetése a Java-ban, a BorderLayout konstruktorok kódjaival és kimeneteivel. Megnézheti más kapcsolódó cikkeinket, hogy többet megtudjon-
- Elrendezés Java-ban
- Rácselrendezés Java-ban
- Változók Java-ban
- Másoló kivitelező Java-ban
- HTML elrendezés