Wprowadzenie do JTabbedPane w Javie

Klasa JTabbedPane jest jedną z wielu klas (takich jak JButton, JTextArea, JMenu, JTextField itp.), Że pakiet javax.swing zapewnia interfejsy API swing java.

Pakiet Java Swing jest częścią klas JFC, JFC. Te klasy fundamentów są używane do tworzenia graficznych interfejsów użytkownika, aplikacji opartych na oknie, wykorzystujących dostępne komponenty GUI, co ułatwia programistom tworzenie aplikacji komputerowych. Są one całkowicie napisane w java top AWT, Abstract Windows Toolkit.

Jednak w przeciwieństwie do AWT, pakiety Java Swing zapewniają komponenty niezależne od platformy. Te elementy są również stosunkowo lekkie.

Na końcu tego artykułu będziesz mógł dodać Swing JComponents, takie jak JTabbedPane, do kontenera AWT. Będziesz także mógł ustawić pozycję panelu i ramy. Dowiesz się również, jak utworzyć przewijany panel kart.

Co to jest JTabbedPane?

JTabbedPane jest jedną z klas udostępnianych przez pakiet swing w Javie. Jest to bardzo przydatne, ponieważ zapewnia użytkownikowi swobodę przełączania się między różnymi grupami komponentów, które chce zobaczyć, po prostu klikając jedną z kart. Zakładki mogą mieć różne tytuły lub ikony.

Oto codzienny przykład takiego okna, które ma kilka kart, do których można uzyskać dostęp poprzez kliknięcie kart.

Proste okno „właściwości” dysku lokalnego (tutaj, Dysk lokalny F: okno Właściwości w moim systemie) na twoim systemie komputerowym ma wiele kart o nazwie Ogólne, Narzędzia, Sprzęt itp., Do których masz dostęp, klikając jedną z nich jest doskonałym przykładem okien z zakładkami.

Innymi słowy, JTabbedPane pomaga mieć kilka komponentów w tym samym miejscu. Użytkownik łatwo wybiera składnik, który chce zobaczyć, wybierając lub klikając żądaną kartę.

Indeksowanie i umieszczanie kart JTabbedPane

Karty są reprezentowane przez indeks, który jest ustalany na podstawie miejsca lub pozycji, w której karta została dodana.

Aby to zrozumieć, załóżmy, że dodałeś pierwszą kartę. Wtedy jego indeks będzie równy „0”, a następna karta będzie miała indeks równy „1”, a zgodnie z modą, indeks ostatnio dodanej karty będzie równy „liczbie tabulatorów minus 1”.

Klasy Okienka z kartami używają modelu pojedynczego wyboru, który reprezentuje „zestaw indeksów tabulatorów”, a także „aktualnie wybrany indeks”, tj. Indeks wybranej karty.

Domyślnie zakładki są umieszczane w NAJWYŻSZEJ lokalizacji, jak widać w okienku z kartami właściwości powyższego okna. Możesz zmienić położenie tego tabulatora na dowolny z kierunków, takich jak LEWY, PRAWY lub Dół za pomocą metody o nazwie setTabPlacement.

Konstruktory JTabbedPane w Javie

Korzystając z JTabbedPane, będziemy również używać jego konstruktorów, które są zróżnicowane w zależności od uprawnień, które zapewniają.

Często używane konstruktory podczas korzystania z JTabbedPane są wymienione w następujący sposób:

1. JTabbedPane ()

Konstruktor JTabbedPane () tworzy pusty TabbedPane. Kiedy używamy konstruktora JTabbedPane (), tworzy on panel bez żadnej specyfikacji jego umiejscowienia. Tak więc karta jest umieszczana w jej domyślnym miejscu, które jest NA GÓRZE, jak omówiono powyżej, przy użyciu JTabbedPane.TOP.

2. JTabbedPane (int tabPlacement)

Ten konstruktor tworzy pusty TabbedPane. Daje to przywilej decydowania o kierunku lub miejscu panelu. Umieszczanie jest wykonywane, gdy kierunek jest określony za pomocą JTabbedPane.TOP, JTabbedPane.BOTTOM, JTabbedPane.LEFT lub JTabbedPane.RIGHT.

3. JTabbedPane (int tabPlacement, int tabLayoutPolicy)

Gdy używany jest ten konstruktor, tworzony jest pusty panel z kartami. Daje to przywilej decydowania o umiejscowieniu panelu kart tak samo, jak konstruktor JTabbedPane (int tabPlacement).

Pozwala także programiście decydować o zasadach układu zakładek. Pozwala to programiście kontrolować sposób wyświetlania kart. Zasady układu zakładek są ustawione na JTabbedPane.SCROLL_TAB_LAYOUT lub JTabbedPane.WRAP_TAB_LAYOUT. Domyślnie zasady są ustawione na WRAP_TAB_LAYOUT.

Po ustawieniu zasad na SCROLL_TAB_LAYOUT karty mogą być przewijane, a przycisk do przewijania kart, w lewo lub w prawo, w górę, jest wyświetlany w panelu z kartami.

Przykład JTabbedPane

Tutaj szczegółowo omawiamy przykład JTabbedPane w Javie:

Wreszcie, zacznijmy ćwiczenie?

W tej części spróbujemy dodać panel z kartami w naszej ramce JFrame. Użyjemy pakietu javax.swing.JTabbedPane zapewni nam funkcję dodawania zakładek do naszej ramki.

Poniżej znajduje się przykładowy kod, wykorzystujący JTabbedPane do tworzenia kart w naszej ramce.

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 uruchomieniu powyższego programu jako wynik otrzymujemy następujące okno.

W powyższym przykładzie dodaliśmy tabulatory do naszej JFrame i nadaliśmy naszym kartom różne nazwy jako „Jeden”, „Dwa” itd. Możemy również dodawać różne komponenty pod naszymi różnymi kartami, używając prostej linii kodu, takiej jak poniżej.

Stworzyliśmy obiekt dla przycisku opcji, r1, a następnie ten obiekt został użyty do dodania przycisków opcji do panelu One, tj. P1.

A składnik „Przycisk radiowy” pojawi się pod naszym pierwszym panelem, w którym go dodaliśmy.

Korzystanie z konstruktorów JTabbedPane

W naszym programie używaliśmy już Konstruktorów, takich jak JTabbedPane (int tabPlacement) lub JTabbedPane (int tabPlacement, int tabLayoutPolicy), ale nadal nie widzieliśmy, żeby to działało.

Zrozumcie to, stworzyliśmy dla siebie klasę Java, a następnie nazwaliśmy naszego konstruktora JTP_Layout (zobacz kod). Następnie ustawiamy argumenty takie jak setTabLayoutPolicy na SCROLL_TAB_LAYOUT za pomocą obiektu naszej klasy.

Jak wspomniano powyżej, gdy zasada tablayout jest ustawiona na SCROLL, pozwala użytkownikowi przewijać karty w danym kierunku za pomocą przycisku.

Dla ilustracji zwiększyłem liczbę kart w naszym programie i ustawiłem zasadę na PRZEWIJANIE, zobacz, jak to działa:

Możesz zobaczyć przycisk przewijania w prawym rogu, który pozwala użytkownikowi przejść w lewo-prawo za pomocą tego przycisku.

Drugi taki argument dodany do naszego konstruktora to setTabPlacement, który jak omówiono powyżej, domyślnie ustawiony jest na TOP. Ale nasz konstruktor pomaga nam to ustalić, ustawiając zakładkę na DOLNY lub LEWY lub PRAWY.

Mamy już taki kod offline w naszym programie, ale skomentowaliśmy (zobacz kod), gdy komentarz zostanie usunięty, zobacz efekt.

Zauważ, że kiedy użyliśmy tabbedPane.setTabPlacement (JTabbedPane.BOTTOM), nasze zakładki przeniosły się na dół ramki.

W tym miejscu należy zauważyć, że nie ma potrzeby „obsługi błędów”, nasz obiekt JTabbedPane obsługuje ruchy myszy i klawiatury oraz zdarzenia. Jeśli jednak chcesz mieć podobną funkcjonalność bez interfejsu karty, możesz użyć układu karty zamiast panelu z kartami.

Na koniec, jeśli zostanie to powiedziane prostymi słowami, w celu utworzenia naszego panelu z kartami utwórz instancję JTabbedPane, a następnie utwórz komponenty do wyświetlenia, a następnie dodaj te komponenty do wybranej karty.

To wszystko, to było łatwe, prawda?

Polecane artykuły

Jest to przewodnik po JTabbedPane w Javie. Tutaj omawiamy wprowadzenie do konstruktorów JTabbedPane i JTabbedPane wraz z jego przykładem. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej-

  1. Constructor and Destructor w Javie
  2. JScrollPane w Javie
  3. JComboBox w Javie
  4. JDialog w Javie
  5. Narzędzia wdrażania Java
  6. JFrame w Javie