Úvod do JTabbedPane v Javě

Třída JTabbedPane je jednou z mnoha tříd (např. JButton, JTextArea, JMenu, JTextField atd.), Které balíček javava.swing java poskytuje API java swing.

Balíček Java Swing je součástí základů třídy Java, JFCs.Tato nadace tříd se používají k vytváření grafických uživatelských rozhraní, aplikací založených na okně pomocí dostupných komponent GUI, což usnadňuje programátorům vývoj desktopových aplikací. Jsou psány zcela v java horní části AWT, Abstrakt Windows Toolkit.

Ale na rozdíl od AWT poskytují balíčky Java Swing komponenty nezávislé na platformě. Tyto komponenty jsou také poměrně nízké hmotnosti.

Na konci tohoto článku budete moci přidat Swing JComponenty jako JTabbedPane do kontejneru AWT. Budete také moci nastavit polohu panelu a rámu. Naučíte se také, jak vytvořit panel s možností posouvání.

Co je JTabbedPane?

JTabbedPane je jednou z tříd poskytovaných balíčkem swing v jazyce Java. Je velmi užitečné, protože poskytuje uživateli flexibilitu při přepínání mezi různými skupinami komponent, které chce vidět, pouhým kliknutím na jednu z karet. Karty mohou mít různé názvy nebo ikony.

Zde je každodenní příklad takového okna, které má několik karet, ke kterým lze přistupovat kliknutím na karty.

Jednoduché okno „vlastností“ místního disku (zde, okno Místní disk F: Vlastnosti v mém systému) ve vašem počítačovém systému obsahuje několik karet s názvem Obecné, Nástroje, Hardware atd., Ke kterým máte přístup, kliknutím na jednu z nich je dokonalým příkladem tabelovaných tabel.

Jinými slovy, JTabbedPane vám pomůže mít několik komponent na stejném místě. Uživatel si snadno vybere, kterou komponentu chce zobrazit, kliknutím nebo kliknutím na požadovanou kartu.

Indexování a umístění karty JTabbedPane

Karty jsou reprezentovány indexem, který se rozhodne podle místa nebo místa, kde byla karta přidána.

Abychom tomu porozuměli, předpokládejme, že jste přidali svou první kartu. Poté bude jeho index roven '0' a vaše další karta bude mít index rovný '1' a podle módy bude index vaší poslední přidané karty roven 'počet karet minus 1'.

Třídy tabelátorů používají jeden výběrový model, který představuje „sadu indexů karet“ a „aktuálně vybraný index“, tj. Index vybrané karty.

Ve výchozím nastavení jsou karty umístěny v TOP umístění, jak je vidět na panelu záložek vlastností okna výše. Toto umístění karty můžete změnit na libovolný směr, například LEVÝ, PRAVÝ nebo Dolní, pomocí metody nazvané setTabPlacement.

Konstruktory JTabbedPane v Javě

Při používání JTabbedPane budeme používat také konstruktory, které jsou rozlišeny na základě oprávnění, která poskytují.

Obvykle používané konstruktory při používání JTabbedPane jsou uvedeny takto:

1. JTabbedPane ()

Konstruktor JTabbedPane () vytvoří prázdný TabbedPane. Když použijeme konstruktor JTabbedPane (), vytvoří podokno bez specifikace pro jeho umístění. Karta je tedy umístěna na své výchozí místo, které je TOP, jak bylo uvedeno výše, pomocí JTabbedPane.TOP.

2. JTabbedPane (int tabPlacement)

Tento konstruktor vytvoří prázdný TabbedPane. Poskytuje oprávnění rozhodovat o směru nebo umístění panelu. Umístění se provádí, když je směr určen pomocí JTabbedPane.TOP, JTabbedPane.BOTTOM, JTabbedPane.LEFT nebo JTabbedPane.RIGHT.

3. JTabbedPane (int tabPlacement, int tabLayoutPolicy)

Při použití tohoto konstruktoru se vytvoří prázdné podokno s kartami. To poskytuje oprávnění rozhodnout o umístění pro panel tabla stejně jako konstruktor JTabbedPane (int tabPlacement).

Umožňuje také programátorovi rozhodnout o zásadách rozvržení karet. To umožňuje programátorovi řídit, jak se budou karty zobrazovat. Zásady rozložení karty jsou nastaveny na JTabbedPane.SCROLL_TAB_LAYOUT nebo JTabbedPane.WRAP_TAB_LAYOUT. Ve výchozím nastavení je zásada settoWRAP_TAB_LAYOUT.

Pokud je zásada nastavena na SCROLL_TAB_LAYOUT, karty se budou moci posouvat a na panelu se zobrazí tlačítko pro posouvání karet, zleva doprava nebo nahoru.

Příklad JTabbedPane

Zde diskutujeme podrobně o příkladu JTabbedPane v Javě:

Konečně nějaké cvičení, máme začít?

Toto je část, kde se pokusíme přidat tabulátor s kartami do našeho JFrame. Budeme používat javax.swing.JTabbedPane balíček nám poskytne funkci pro přidání karet do našeho rámu.

Následuje příklad kódu, který pomocí JTabbedPane vytváří záložky v našem rámci.

import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTabbedPane;
public class JTP_Layout
(
JFrame frame;
JTP_Layout()
(
//Creating our JFrame
frame= newJFrame("Tabbed Pane Sample");
//Terminating process after exiting
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Adding TabbedPane Object
JTabbedPanetabbedPane = new JTabbedPane();
//Adding TabbedPane LayoutPolicy
tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
//TabPlacement
//tabbedPane.setTabPlacement(JTabbedPane.BOTTOM);
//Setting our componentobject
//JRadioButton r1=new JRadioButton("A) Tab Component A");
//r1.setBounds(30, 30, 100, 90);
//Adding our First Panel Object
JPanel p1=new JPanel();
//Adding our component to the Panel
//p1.add(r1);
JPanel p2=new JPanel();
JPanel p3=new JPanel();
//Setting boundary values for the tabs
tabbedPane.setBounds(50, 50, 200, 200);
//Naming 'One' asour First Pane
tabbedPane.add("One", p1);
tabbedPane.add("Two", p2);
tabbedPane.add("Three", p3);
//Setting Frame'sposition to the center
frame.add(tabbedPane, BorderLayout.CENTER);
//Setting FRame'sSize
frame.setSize(400, 150);
//Setting visibility asTrue
frame.setVisible(true);
)
public static void main(String args())
(
new JTP_Layout();
)
)


Po spuštění výše uvedeného programu získáme jako výstup následující okno.

Ve výše uvedeném příkladu jsme přidali karty do našeho JFrame a dali jsme našim kartám různá jména jako „One“, „Two“ atd. Také můžeme přidat různé komponenty pod naše různé karty pomocí jednoduchého řádku kódu, jako je níže.

Vytvořili jsme objekt pro přepínací tlačítko r1 a poté byl tento objekt použit k přidání přepínačů do panelu One, tj. P1.

Komponenta „Radio Button“ se objeví na našem prvním panelu, kam jsme ji přidali.

Použití konstruktorů JTabbedPane

V našem programu jsme již použili konstruktory, jako je JTabbedPane (int tabPlacement) nebo JTabbedPane (int tabPlacement, int tabLayoutPolicy), ale ještě jsme neviděli, že to má účinek.

Pochopili jsme to, že jsme si vytvořili třídu Java pro sebe, a pak jsme nazvali našeho konstruktora, JTP_Layout (viz kód). Potom pomocí argumentu naší třídy nastavíme argumenty, jako je setTabLayoutPolicy, na SCROLL_TAB_LAYOUT.

Jak je uvedeno výše, když je zásada tablayout nastavena na SCROLL, umožňuje uživateli posouvat karty ve směru pomocí tlačítka.

Pro ilustraci jsem v našem programu zvýšil počet karet a nastavil politiku na SCROLL, viz efekt:

V pravém rohu je vidět rolovací tlačítko, které umožňuje uživateli pomocí tohoto tlačítka jít doleva-doprava.

Další takový argument přidaný k našemu konstruktoru je setTabPlacement, který je, jak je uvedeno výše, ve výchozím nastavení nastaven na TOP. Náš konstruktor nám to však pomáhá rozhodnout nastavením umístění karty na BOTTOM nebo LEFT nebo RIGHT.

V našem programu jsme již takový kód měli offline, ale komentovali (viz kód), když je komentář odstraněn, podívejte se na efekt.

Všimněte si, že když jsme použili tabbedPane.setTabPlacement (JTabbedPane.BOTTOM), naše karty se přesunuly na spodní část rámu.

Zde je důležité si uvědomit, že není třeba žádné „zpracování chyb“, náš objekt JTabbedPane zpracovává tahy nebo události myši a klávesnice. Pokud však chcete mít podobné funkce bez rozhraní karet, můžete místo podokna karet použít rozložení karty.

Nakonec, pokud je řečeno jednoduchými slovy, pro vytvoření našeho panelu s kartami vytvořte instanci JTabbedPane, vytvořte komponenty, které se mají zobrazit, a přidejte je na požadovanou kartu.

To je ono, bylo to snadné, že?

Doporučené články

Toto je průvodce JTabbedPane v Javě. Zde diskutujeme úvod k konstruktérům JTabbedPane a JTabbedPane spolu s jeho příkladem. Další informace naleznete také v následujících článcích

  1. Konstruktor a ničitel v Javě
  2. JScrollPane v Javě
  3. JComboBox v Javě
  4. JDialog v Javě
  5. Java Deployment Tools
  6. JFrame v Javě

Kategorie: