Úvod do CardLayout v Javě

Následující článek CardLayout v Javě poskytuje přehled různých metod CardLayouts v javě. Jak jsme si vědomi konceptu Layout v Javě a jak různé Layout Manager pomáhá při správě tolika komponent v jednom kontejneru, aniž by to ovlivnilo vzájemné umístění. Rozložení karty je jedním z nich. Na rozdíl od jiných rozvržení, která zobrazují komponenty kontejneru jeden po druhém, rozložení karet, jak název napovídá, funguje jako balíček hracích karet s pouze jednou kartou, tj. Nejvyšší kartou viditelnou najednou. Zachází s každou složkou v kontejneru jako s kartou a jako s hromadou karet. Pořadí karet v kontejneru je definováno interně. Když je kontejner zobrazen poprvé, jedná se o první komponentu přítomnou v kontejneru.

Konstruktory CardLayout v Javě

CardLayout je třída Java a má několik konstruktérů. Níže jsou uvedeny některé z konstruktorů CardLayout v Javě:

CardLayout ()

Tento konstruktor třídy Java CardLayout se používá k vytvoření nového CardLayout s mezerami velikosti nula (0) mezi různými komponenty.

CardLayout (int hgap, int vgap)

Tento konstruktor Java se používá k vytvoření nového CardLayout s horizontální a vertikální mezerou mezi komponenty, jak je uvedeno v argumentech. Hgap označuje horizontální mezeru, zatímco vgap představuje vertikální mezeru mezi komponenty.

Metody třídy CardLayout v Javě

Níže je uveden seznam metod třídy CardLayout:

Název metodyPopis metody
public void first (Container parent)Metoda použitá k převrácení na první kartu dodávaného kontejneru
public void last (Container parent)Metoda použitá k převrácení na poslední kartu poskytnutého kontejneru
veřejné neplatné další (rodič kontejneru)Metoda použitá k převrácení na další kartu poskytnutého kontejneru
public void previous (Container parent)Metoda použitá k převrácení na předchozí kartu poskytnutého kontejneru
veřejná neplatná show (rodič kontejneru, název řetězce)Metoda použitá k převrácení do zadaného kontejneru s daným názvem
getVgap ()Metoda použitá k získání vertikální mezery mezi komponenty
getHgap ()Metoda použitá k získání horizontální mezery mezi komponenty
void addLayoutComponent (Component com, Object Object))Metoda použitá k přidání zadané komponenty do vnitřní tabulky rozložení karet
float getLayoutAlignmentX (rodič kontejneru)Metoda vrací zarovnání podél osy x
float getLayoutAlignmentX (rodič kontejneru)Metoda vrací zarovnání podél osy y
Maximální dimenzeLayoutSize (Cíl kontejneru)Metoda vrací maximální rozměry rozvržení dané komponenty v cílovém kontejneru
MimimumLayoutSize (cíl kontejneru)Metoda vrací minimální rozměry pro rozvržení dané komponenty v cílovém kontejneru
Preferovaná dimenzeLayoutSize (Nadřazený kontejner)V této metodě se pomocí rozložení karty určí preferovaná velikost argumentu kontejneru
void removeLayoutComponent (Component comp)Tato metoda odstraní komponentu zadanou z rozložení karty
String toString ()Tato metoda vrací řetězcové zobrazení tohoto rozložení karty
void invalidateLayout (Target Container)Tato metoda zneplatňuje kontejner s tím, že v případě, že správce rozložení uložil některé informace do mezipaměti, měla by být zahozena

Příklad CardLayout v Javě

// importing all the necessary packages
import java.awt.*;
import java.awt.event.*;
import javax.swing.JFrame;
import javax.swing.*;
// Class Cardlayout is extending the JFrame and implementing the interface of ActionListener
public class Cardlayout extends JFrame implements ActionListener (
// Declaring the objects of the above mentioned Cardlayout class.
CardLayout cd;
// Declaring the objects of JButton class which we want in our JFrame
JButton jb1, jb2, jb3;
// Declaring the object of the Container class with the name 'con'.
Container con;
// Using the constructor of the class CardLayout in order to initialise the above objects
Cardlayout()
(
// using the method in order to get the content
con = getContentPane();
// Initializing the object "cd” of CardLayout class with horizontal and vertical spaces as 70 and 50 respectively
cd = new CardLayout(70, 50);
// setting of the layout using the setLayout method
con.setLayout(cd);
// Initialising the object "jb1" of the above JButton class.
jb1 = new JButton("Hello");
// Initialising the object "jb2" of the above JButton class.
jb2 = new JButton("Hey");
// Initialising the object "jb3" of the above JButton class.
jb3 = new JButton("Hii");
// Using this Keyword in order to refers to the current object.
// Adding of Jbutton "jb1" on JFrame using the methods of ActionListener
jb1.addActionListener(this);
// Adding of Jbutton "jb2" on JFrame.
jb2.addActionListener(this);
// Adding of Jbutton "jb3" on JFrame.
jb3.addActionListener(this);
// Adding of the above buttons to the container one by one
// Adding the JButton "jb1" using add method
con.add("a", jb1);
// Adding the JButton "jb2" similar to the above
con.add("b", jb2);
// Adding the JButton "jb3" in the container
con.add("c", jb3);
)
public void actionPerformed(ActionEvent e)
(
// using next method to call the next card
cd.next(con);
)
// Main Method of Java class from where the execution starts
public static void main(String() args)
(
// Creating Object of CardLayout class.
Cardlayout cl1 = new Cardlayout();
// Setting the title of JFrame
cl1. setTitle("Checking how Card Layout works");
// Setting the size of JFrame.
cl1.setSize(800, 800);
// Setting the resizable value of JFrame.
cl1.setResizable(false);
// Setting the visibility of JFrame.
cl1.setVisible(true);
// Function to set default operation of JFrame.
cl1.setDefaultCloseOperation(EXIT_ON_CLOSE);
)
)

Ve výše uvedeném příkladu je Cardlayout název třídy, který dědí JFrame a implementuje rozhraní ActionListener. Snažíme se uspořádat různé komponenty JLabel do JFrame. Vytváříme 3 jButtony s názvem jb1, jb2, jb3 a přidáváme je do JFrame. Tlačítka jsou přidána do jFrame pomocí metody add (). V hlavní funkci se používají různé metody, jako je setVisible (), aby se nastavila viditelnost snímku, setResizable, aby se nastavila velikost, setTitle a setSize pro nastavení názvu a velikosti snímku. Vysvětlení

Výstup:

Takže, jak je uvedeno níže, výstupem by byl jFrame s prvním tlačítkem s názvem „Hello“, které se zobrazí jako první, kliknutím na něj se zobrazí druhé tlačítko „Hey“ a následným kliknutím na něj se uživateli zobrazí „Hii“.

Závěr

V Javě jsou různé typy rozvržení a každé rozvržení má svůj vlastní způsob uspořádání komponent. Pro efektivní práci na aplikacích GUI je pro programátora velmi důležité hluboké a praktické porozumění každému rozvržení. Grafické programování také používá Layout Managers ve svém vývoji, který je trendem v IT průmyslu.

Doporučené články

Toto je průvodce CardLayout v Javě. Zde diskutujeme Úvod, konstruktéry a metody Cardlayout v Javě spolu s několika příklady. Další informace naleznete také v následujících článcích -

  1. Sloučit řazení v Javě
  2. Rychlé třídění v Javě
  3. Zatímco smyčka v Javě
  4. Hvězdné vzory v Javě
  5. Rozvržení HTML

Kategorie: