Introduktion till BorderLayout i Java

BorderLayout i Java eller Layout-hanteraren är ett objekt som varje behållarobjekt har, som styr dess layout, dvs storlek och placering av komponenterna. På lekmannsspråk används dessa layouthanterare för att ordna komponenterna på ett visst eller specifikt sätt. 'LayoutManager' kan sägas vara ett gränssnitt som implementeras av alla dess klasser. Det finns några AWT- och SWING-klasser som har tillhandahållits som layouthanterare för allmänt bruk. Några av dem listas nedan:

  1. Border
  2. BoxLayout
  3. SpringLayout
  4. FlowLayout
  5. GroupLayout
  6. GridLayout, etc.

Innan vi flyttar till BorderLayout kan vi anta att diskutera några punkter.

Nästan allt i datorvärlden är hierarkiskt organiserat antingen för bättre lagring eller för att skapa ett enkelt hämtningssystem. Layouthanterare som används för att skapa gränssnitt med tillgängliga AWT-klasser är en del av ett sådant hierarkiskt system. Det går under namnet Conception Hierarchy. Även om denna artikel kommer att fokusera på en av de tillgängliga LayoutManager som kallas BorderLayout, innan detta bör vi veta var BorderLayout står i denna hierarki. Vår trädstruktur som går igenom ramar, GUI-komponenter, containrar etc. Börjar med:

  1. Först en toppnivåcontainer eller behållarklass på högsta nivå som JFrame, JApplet eller JDialog, som fungerar som 'ROOT' i denna inneslutningshierarki.
  2. För det andra, för att en komponent ska visas som en GUI-komponent på skärmen, måste den inkluderas i inneslutningshierarkin.
  3. För det tredje måste en komponent endast vara eller kommer att finnas i en behållare.
  4. För det fjärde kommer varje toppnivåbehållare att ha ett innehållsruta, löst sett finns alla gränssnitt som är synliga (direkt eller indirekt) i detta innehållsruta.

Vad är BorderLayout?

En BorderLayout-klass är en av layouthanterarklasserna som anses vara standardlayouten för fönsterobjekt. Fönsterobjekten som JFrame, JWindow, JDialog använder den här klassen för att visas som GUI-komponenter. BorderLayout används för att lägga upp en behållare, dvs arrangera och ändra storlek på dess komponenter. Gränslayouten ordnar dessa komponenter i fem olika regioner. Av fem kallas fyra regioner eller områden som norr, söder, öst och väst och den mellersta regionen kallas centrum. Varje region får endast innehålla en komponent. Gränslayouten ger en samling konstanter som används för att placera komponenter. Regionerna som diskuteras här identifieras av en motsvarande konstant med namnet NORTH, SOUTH, East, West och konstanten för den mellersta regionen som CENTER. Vi använder dessa konstanter medan vi lägger till en komponent med en gränslayout. Konstanter för varje region som används i vår kod listas nedan:

  • offentlig statisk slutlig NORD: Nordlayouten konstant överst på containern.
  • public static final int SOUTH: The South layout konstant i botten av behållaren.
  • public static final int CENTER: Centerlayoutkonstanten mitt i behållaren.
  • public static final int WEST: Västra layouten konstant till höger om containern.
  • public static final int ÖST: Östlig layout konstant till vänster om containern.

Förutom de ovan listade konstanterna, ger BorderLayout också andra positioneringskonstanter, såsom PAGE_START, PAGE_END, etc.

BorderLayout-konstruktörer

BorderLayout-konstruktörer är vana att skapa nya gränslayouter med mellanrum eller utan mellanrum mellan komponenterna. Gränslayoutkonstruktören använder gap- och gapparametrar för att specificera horisontella mellanrum och vertikala mellanrum mellan komponenterna. Gränslayoutkonstruktorer diskuteras nedan:

Vi kommer att diskutera dem en efter en tillsammans med deras exempel.

1. BorderLayout ()

BorderLayout Class används för att skapa en gränslayout men utan mellanrum mellan komponenterna. Följande är ett exempelkod med BorderLayout () -konstruktören. Följande program skapar komponenter i en JFrame vars instansklass är 'border'. Du kan se på skärmdumpen nedan (efter koden), det finns fem regioner.

Vår kod har skapat fem regioner med fem JButton och sedan läggs dessa till layouten eller JFrame med en add-metod. Storleken och synligheten bestäms separat för JFrame. metoden setSize () används för att ställa in storleken för ramen och metoden inställd synlighet () används för att ställa in ramens synlighet.

Koda

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

I skärmbilden nedan kan du se hur koden ser ut i textredigeraren. Jag har använt Eclipse som min textredigerare.

När koden körs visas följande utgång.

Produktion:

2. BorderLayout (int hgap, int vgap)

BorderLayout (int hgap, int vgap) är också skrivet som BorderLayout (int, int) används för att skapa en kantlinje med de angivna horisontella (hgap) och vertikala (vgap) mellanrummen eller mellanrum mellan följande är en exempelkod med BorderLayout ( int, int) konstruktör. Följande program skapar komponenter i en JFrame vars instansklass är 'gräns' på samma sätt som ovan men med vertikala och horisontella luckor. Du kan se på skärmdumpen nedan (efter koden).

Vår kod har skapat fem regioner med mellanrum mellan dem med vgap- och hgap-parametrar i BorderLayout (). Storleken och synligheten bestämmes igen separat för JFrame. metoden setSize () används för att ställa in storleken för ramen och metoden inställd synlighet () används för att ställa in ramens synlighet.

Du kan se koden för att generera en ram med BorderLayout med vgap- och hgap-parametrar, skapa mellanrum eller mellanrum mellan regionerna visas nedan:

Koda

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

I skärmbilden nedan kan du se hur koden ser ut i textredigeraren.

Kodraden, "setLayout (new BorderLayout (20, 30));" anger utgången som bilden som visas nedan. Här 20 är det horisontella utrymmet och 30 representerar det vertikala utrymmet.

När koden körs visas följande utgång.

Produktion:

Du kan också prova andra egenskaper, till exempel, ställa in bakgrundsfärg. I ovanstående kod, om du ser en kommenterad kodrad som "setBackground (Color.RED);" om du försöker den här koden med den här raden okommenterad, kommer din ram att visas som nedan:

Det finns andra vanligt förekommande metoder vid sidan av gränssnittet, till exempel:

  1. toString (): Returnerar en sträng som representerar gränsläget.
  2. getVgap (): Returnera det vertikala mellanrummet mellan komponenten.
  3. getHgap (): Returnera det horisontella avståndet mellan komponenten.
  4. setVgap (int vgap): Detta används för att ställa in det vertikala mellanrummet mellan komponenten.
  5. setHgap (int hgap): Detta används för att ställa in det horisontella mellanrummet mellan komponenterna etc.

Den här artikeln diskuterade några av de kraftfulla LayoutManagers som används för att lägga ut dina Windows-ramar och GUI. Artikeln täckte också skrivkodlayouter med två olika konstruktörer kända som java.awt.BorderLayout-klassen och java.awt.BorderLayout-klassen (int, int) för hand, vilket kunde ha varit utmanande. Men du bör försöka ge det gå. Om inte kan du prova att använda java.awt.GroupLayout layouthanterare. Du kan använda ett byggverktyg också tillsammans med din layouthanterare, till exempel NetBeans IDE, vilket är ett bra verktyg för att skapa ditt GUI.

Rekommenderade artiklar

Detta är en guide till BorderLayout i Java. Här diskuterar vi en introduktion till BorderLayout i Java, BorderLayout Constructors med koder och utgångar. Du kan också gå igenom våra andra relaterade artiklar för att lära dig mer-

  1. Layout i Java
  2. Rutnätlayout i Java
  3. Variabler i Java
  4. Kopiera konstruktör i Java
  5. HTML-layout

Kategori: