Oversigt over Flowlayout i Java
Før du dykker dybt ned i FlowLayout i Java-detaljer, kan vi revidere nogle grundlæggende emner, der kræves til FlowLayout:
Java AWT : AWT er et API til opbygning af GUI eller vinduesbaserede applikationer.
Nogle af de grundlæggende begreber vedrørende AWT-hierarki er som følger:
1. Container : Container er en klasse, der indeholder alle komponenter såsom knap, tekstfelt, titellinje, menulinje osv.
2. Komponenter : Komponenter er GUI-objekter såsom knapper, etiket, tekstfelt, tjekliste.
Der er nogle grundlæggende komponentfunktioner såsom:
- public void add (komponent c): tilføjer en komponent på denne komponent.
- public void setSize (int bredde, int højde): indstiller bredden og højden af komponenten.
- public void setLayout (LayoutManager m): definerer layoutadministratoren for komponenten.
- public void setVisible (boolsk status): definerer synligheden af komponenten, som standard er den falsk.
3. Panel : Panel er en containerklasse. Det skaber et rum til en applikation, hvor alle komponenter kan passe ind. Det arver containerklassen.
Panelet indeholder ikke menulinje eller titellinje i det, men kan indeholde andre komponenter som tekstfelt, knapper.
4. Frame : Frame er en containerklasse. Det indeholder en menulinje og titellinje og kan også indeholde andre komponenter.
5. Layout Manager : En layout manager er et objekt, der implementerer LayoutManager-interface til at bestemme størrelsen og placeringen af komponenterne i containeren.
Der er mange typer layout manager tilgængelig, hver med sine egne muligheder og specifikke opgaver:
- FlowLayout.
- BorderLayout.
- CardLayout.
- BoxLayout.
- GridLayout.
- GridBagLayout.
- GroupLayout.
- SpringLayout.
FlowLayout-definition
- FlowLayout er en af layoutadministratorerne leveret af AWT brugt i applets til at arrangere komponenterne på en måde fra venstre til højre ligesom ord i et afsnit.
- Når nej. Af komponenter stiger end vinduesstørrelsen, aktiverer Java som standard FlowLayout til at arrangere komponenterne til at passe ind i vinduesruden.
- FlowLayout er standardlayoutet, der leveres af layoutadministratoren. Når du ikke vælger noget layout, indstilles layoutet til at flyde.
- FlowLayout bruger nogle standardindstillinger såsom centerjustering med fem pixel mellemrum mellem komponenter vandret og lodret.
Justeringen bestemmes af egenskaben "align". Og justeringsfeltet er som følger:
- VENSTRE: Det justerer komponenter til venstre.
- HØJRE: Det justerer komponenterne til højre.
- CENTER: Den justerer komponenterne til midten.
- FØRING: Det vil være i forkanten af containeren, dvs. til venstre for venstre mod højre retning.
- SLING: Det vil være ved bagkanten af containeren, dvs. til højre for venstre til højre
Almindeligt anvendte funktioner af FlowLayout
- setAlignment (int align): Indstiller den respektive justering til beholderens layout.
- getAlignment (): Henter justeringen af layoutet på containeren.
- addLayoutComponent (): Tilføjer den bestemte komponent til layoutet.
- setTitle (strengtekst): Indstiller beholderens titel med den givne tekst.
Konstruktører i FlowLayout
- FlowLayout (): Konstruerer en forekomst af FlowLayout som midtjusteret og med 5 pixel mellemrum mellem komponenterne.
- FlowLayout (int align): Konstruerer en FlowLayout med en given justering med 5 pixel mellemrum mellem komponenterne.
- FlowLayout (int align, int horizontalGap, int verticalGap): Konstruerer en FlowLayout med en given justering og med en given vandret og lodret afstand mellem komponenterne.
- Denne konstruktør justerer sig efter det specificerede justeringsfelt som HØJRE, VENSTRE eller CENTER og giver også muligheden for at tilføje vandret afstand og den lodrette afstand mellem komponenter.
Eksempel på flowlayout:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Layout extends JFrame
(
private JButton lb;
private JButton rb;
private JButton cb;
private FlowLayout layout;
private Container container;
public Layout()
(
super("the title");
layout = new FlowLayout();
container = getContentPane();
setLayout(layout); //left alignment
lb = new JButton("left");
add(lb);
lb.addActionListener(
new ActionListener()
(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.LEFT);
layout.layoutContainer(container);
)
)
);
//right alignment
rb = new JButton("right");
add(rb);
rb.addActionListener(
new ActionListener()
(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.RIGHT);
layout.layoutContainer(container);
)
)
);
//center alignment
cb = new JButton("center");
add(cb);
cb.addActionListener(
new ActionListener()(
public void actionPerformed(ActionEvent event)
(
layout.setAlignment(FlowLayout.CENTER);
layout.layoutContainer(container);
)
)
);
)
)
Hovedmetode til flowlayout i Java
import javax.swing.*;
public class Test
(
public static void main(String() args)
(
Layout l = new Layout();
l.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
l.setSize(300, 100);
l.setVisible(true);
)
)
Produktion:
Forklaringen på ovenstående kode
- I ovenstående kode havde vi erklæret 3 knapper ved hjælp af JButton som lb, rb og cb.
- Når vi opretter klasseforekomsten, er vi nødt til at se knapperne, så føje knapperne til en container i selve klassekonstruktøren.
- Vi udvider JFrame-klassen
- Med setLayout () -funktionerne indstiller vi layoutet som flowlayout.
- Når vi klikker på knappen "venstre" til venstrejustering, skal knapperne i vinduesruden justeres til venstre.
- For at dette fungerer, tilføjes den bestemte knap i vindue-panelet, og ved klikhændelsen for den knap indstilles layoutet til venstre.
- I ovenstående kode indstiller setAlignment (FlowLayout.LEFT) panellayoutjusteringen til venstre. FlowLayout.LEFT er det felt, der er tilgængeligt til justering. Tilsvarende er FlowLayout.RIGHT, FlowLayout.CENTER, FlowLayout.TRAILING, FlowLayout.LEADING nogle af de andre felter, der bruges til at indstille justering.
- Bemærk, at disse justeringsfelter vil justere alle komponenterne til enten venstre, højre eller midten.
- Det afhænger ikke af størrelsen på dit vindue. Det justerer og justerer dine komponenter respektivt med den specificerede justering.
- Som vi gjorde for venstrejustering på lignende måde, udviklede vi os til midten og højre justering. Endelig udviklede vi Testklasse til skrivning af hovedmetoden til test af vores FlowLayout Java-kode.
- Ved at oprette en forekomst af klassen Layout i hovedmetoden indstiller vi vinduesstørrelsen og komponentens synlighed til sand.
Konklusion - Flowlayout i Java
Denne tutorial giver dig den grundlæggende idé om, hvorfor Java har FlowLayout, og hvad er funktionerne ved det. FlowLayout er standardlayoutet på grund af dets lethed og justeringspræcision. Husk, at ethvert koncept bliver endnu mere tydeligt, når du koder og praktiserer det. Lad fejl komme i din kode, tøv ikke med at fortsætte kodningen og forstå begrebet præcist.
Anbefalede artikler
Dette er en guide til Flowlayout i Java. Her diskuterer vi konstruktører og almindeligt anvendte funktioner i FlowLayout. Du kan også se på den følgende artikel for at lære mere -
- JPanel i Java
- Udskiftning i Java
- Factorial i Java
- Sorterer i Java
- Komplet guide til sortering i C # med eksempler
- HTML-layout
- Sorteringsfunktion i Python med eksempler
- Komplet guide til Factorial i C #