Prezentare generală a Flowlayout în Java

Înainte de scufundarea profundă în FlowLayout în detalii Java, vă putem revizui câteva subiecte de bază necesare pentru FlowLayout:

Java AWT : AWT este o API pentru construirea interfeței grafice sau a aplicațiilor bazate pe ferestre.

Unele dintre conceptele de bază privind ierarhia AWT sunt următoarele:

1. Container : Container este o clasă care conține toate componentele, cum ar fi butonul, câmpul de text, bara de titlu, menubarul etc.

2. Componente : Componentele sunt obiecte GUI, cum ar fi butoane, etichetă, câmp text, lista de verificare.

Există câteva funcții de bază ale componentelor, cum ar fi:

  • public void add (Componenta c): adaugă o componentă la această componentă.
  • public void setSize (int largimea, int înălțimea): setează lățimea și înălțimea componentei.
  • public void setLayout (LayoutManager m): definește layout-ul pentru componentă.
  • public void setVisible (status boolean): definește vizibilitatea componentei, implicit este falsă.

3. Panou : Panoul este o clasă de container. Creează un spațiu pentru o aplicație în care toate componentele pot fi încadrate. Moștenește clasa de containere.

Panoul nu conține meniu sau bara de titlu, dar poate conține alte componente, cum ar fi câmpul de text, butoanele.

4. Cadru : Cadrul este o clasă de container. Conține o bară de meniu și bara de titlu și poate conține și alte componente.

5. Manager de dispunere : un manager de aspect este un obiect care implementează interfața LayoutManager pentru a determina dimensiunea și poziția componentelor din container.

Există mai multe tipuri de manager de dispunere disponibile, fiecare având propriile sale capacități și sarcini specifice:

  • FlowLayout.
  • BorderLayout.
  • CardLayout.
  • BoxLayout.
  • GridLayout.
  • GridBagLayout.
  • GroupLayout.
  • SpringLayout.

Definiția FlowLayout

  • FlowLayout este unul dintre managerii de dispunere furnizați de AWT utilizat în appleturi pentru a aranja componentele într-o manieră de la stânga la dreapta la fel ca cuvintele dintr-un paragraf.
  • Când nu. Dintre componentele crește decât dimensiunea ferestrei, apoi în mod implicit, Java permite FlowLayout să aranjeze componentele pentru a se potrivi în intervalul de ferestre.
  • FlowLayout este aspectul implicit furnizat de managerul de aspect. Atunci când nu selectați nicio dispunere, atunci aspectul va fi setat să curgă.
  • FlowLayout folosește anumite setări implicite, cum ar fi alinierea centrală cu cinci pixeli la distanțe între componente orizontal și vertical.

Alinierea este determinată de proprietatea „aliniere”. Și câmpul de aliniere este următorul:

  • STÂNDA: aliniază componentele la stânga.
  • DREPT: Aliniază componentele la dreapta.
  • CENTRE: aliniază componentele la centru.
  • CONDUCERE: va fi la marginea de vârf a containerului, adică la stânga pentru orientarea de la stânga la dreapta.
  • TRIMITARE: va fi la marginea finală a containerului, adică la dreapta spre stânga la dreapta

Funcții frecvent utilizate de FlowLayout

  • setAlignment (int align): Setează alinierea respectivă la aspectul containerului.
  • getAlignment (): Obține alinierea machetei containerului.
  • addLayoutComponent (): adaugă componenta particulară la aspect.
  • setTitle (text string): Setează titlul containerului cu textul dat.

Constructori în FlowLayout

  • FlowLayout (): Construiește o instanță de FlowLayout ca fiind orientată în centru și cu un spațiu de 5 pixeli între componente.
  • FlowLayout (aliniere int): Construiește un FlowLayout cu o aliniere dată cu un spațiu de 5 pixeli între componente.
  • FlowLayout (aliniere int, int horizontalGap, int verticalGap): Construiește un FlowLayout cu o aliniere dată și cu un interval orizontal și vertical dat între componente.
  • Acest constructor se va alinia după câmpul de aliniere specificat drept DREPT, STÂMP sau CENTRU și oferă, de asemenea, opțiunea pentru adăugarea unui decalaj orizontal și a golului vertical dintre componente.

Exemplu pentru aspectul fluxului:

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

Metoda principală a fluxului în 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);
)
)

ieşire:

Explicația pentru codul de mai sus
  • În codul de mai sus, am declarat 3 butoane cu ajutorul lui JButton ca lb, rb și cb.
  • La crearea instanței de clasă, trebuie să vedem butoanele astfel încât să adăugăm butoanele la un container din constructorul clasei.
  • Extindem clasa JFrame
  • Cu funcțiile setLayout () setăm aspectul ca flowlayout.
  • Pentru alinierea la stânga, atunci când facem clic pe butonul denumit „stânga”, butoanele din fereastra geamului trebuie să fie aliniate la stânga.
  • Pentru ca acest lucru să funcționeze, butonul particular este adăugat pe panoul de ferestre, iar pe evenimentul de clic al acelui buton, aspectul va fi setat pe stânga.
  • În codul de mai sus, setAlignment (FlowLayout.LEFT) va seta alinierea aspectului panoului la stânga. FlowLayout.LEFT este câmpul disponibil pentru aliniere. În mod similar, FlowLayout.RIGHT, FlowLayout.CENTER, FlowLayout.TRAILING, FlowLayout.LEADING sunt câteva dintre celelalte câmpuri utilizate pentru a seta alinierea.
  • Rețineți că aceste câmpuri de aliniere vor alinia toate componentele la stânga, dreapta sau centru.
  • Nu depinde de dimensiunea ferestrei tale. Acesta va ajusta și alinia componentele cu respectarea alinierii specificate.
  • Așa cum am făcut și pentru alinierea stângă, într-o manieră similară, am dezvoltat pentru alinierea la centru și la dreapta. În cele din urmă, am dezvoltat Test Class pentru scrierea metodei principale de testare a codului nostru Java FlowLayout.
  • Prin crearea unei instanțe a clasei Layout în metoda principală, am setat dimensiunea ferestrei și vizibilitatea componentelor la true.

Concluzie - Flowlayout în Java

Acest tutorial vă oferă ideea de bază de ce Java are FlowLayout și care sunt funcționalitățile acestuia. FlowLayout este aspectul implicit datorită ușurinței și preciziei de aliniere. Amintiți-vă că fiecare concept devine și mai clar atunci când codificați și îl practicați. Lăsați eroarea să vină în codul dvs., nu ezitați să păstrați codificarea și să înțelegeți exact conceptul.

Articole recomandate

Acesta este un ghid pentru Flowlayout în Java. Aici vom discuta despre constructori și funcțiile utilizate în mod obișnuit de FlowLayout. De asemenea, puteți consulta articolul următor pentru a afla mai multe -

  1. JPanel în Java
  2. Schimbarea în Java
  3. Factorial în Java
  4. Sortare în Java
  5. Ghid complet de sortare în C # cu exemple
  6. Aspect HTML
  7. Funcția de sortare în Python cu exemple
  8. Ghid complet pentru factorial în C #