Introduktion til JTabbedPane i Java

JTabbedPane-klassen er en af ​​de mange klasser (såsom JButton, JTextArea, JMenu, JTextField osv.), Som 'javax.swing' java-pakke giver mulighed for java swing-API'er.

Java Swing-pakken er en del af Java's fundamentklasser, JFCs.These grundlæggende klasser bruges til at oprette grafiske brugergrænseflader, vinduesbaserede applikationer ved hjælp af tilgængelige GUI-komponenter, hvilket gør det lettere for en programmør at udvikle desktop-applikationer. De er skrevet fuldstændigt i java-toppen af ​​AWT, Abstract Windows Toolkit.

Modsat AWT leverer Java Swing-pakker platformuafhængige komponenter. Disse komponenter er også relativt letvægtede.

I slutningen af ​​denne artikel vil du kunne tilføje Swing JComponents som JTabbedPane på en AWT-container. Du vil også være i stand til at indstille placeringen af ​​dit panel og ramme. Du lærer også, hvordan du opretter et panel, der kan rulle med hinanden.

Hvad er JTabbedPane?

JTabbedPane er en af ​​de klasser, der leveres af swing-pakken i java. Det er meget nyttigt, da det giver brugeren fleksibilitet til at skifte mellem forskellige grupper af komponenter, han ønsker at se, ved blot at klikke på en af ​​fanerne. Fanerne kan få forskellige titler eller ikoner.

Her er et dagligdags eksempel på et sådant vindue, der har flere faner, som du kan få adgang til ved at klikke på fanerne.

Et simpelt 'egenskabsvindue' på en lokal disk (her, Lokal disk F: Egenskaber-vindue på mit system) på dit computersystem har flere faner, navngivet Generelt, Værktøjer, Hardware osv., Som du er i stand til at få adgang til, ved at klikke på en af dem er et perfekt eksempel på ruder med faner.

Med andre ord hjælper JTabbedPane dig med at få flere komponenter til at dele det samme sted. Brugeren vælger let hvilken komponent han vil se ved at vælge eller klikke på den ønskede fane.

Indeksering og placering af fanen JTabbedPane

Fanerne er repræsenteret af et indeks, der afgøres i henhold til stedet på eller den position, hvor fanen blev tilføjet.

For at forstå dette, lad os antage, at du tilføjede din første fane. Derefter vil dens indeks være lig med '0', og din næste fane har et indeks, der er lig med '1' og går efter mode, din sidst tilføjede faneblads indeks vil være lig med 'fanetælling minus 1'.

Klasser med faneblade bruger en enkelt markeringsmodel, der repræsenterer 'et sæt faneindekser' såvel som 'aktuelt valgt indeks', dvs. det valgte faneblads indeks.

Som standard placeres fanerne på den øverste placering, som du kan se i ovenstående vindues egenskabs faneblade. Du kan ændre denne fanebladplacering til en af ​​instruktionerne som VENSTRE, HØJRE eller bund ved hjælp af en metode kaldet setTabPlacement-metoden.

JTabbedPane-konstruktører i Java

Når vi bruger JTabbedPane, bruger vi også dens konstruktører, som er differentierede baseret på de privilegier, de giver.

De ofte anvendte konstruktører under brug af JTabbedPane er anført som følger:

1. JTabbedPane ()

Konstruktøren JTabbedPane () opretter en tom fanebane. Når vi bruger konstruktøren JTabbedPane (), opretter den ruden uden nogen specifikation for dens placering. Så fanen placeres på sin standardplads, der er TOP som diskuteret ovenfor ved hjælp af JTabbedPane.TOP.

2. JTabbedPane (int tabPlacement)

Denne konstruktør opretter en tom fanebane. Det giver privilegiet at bestemme retning eller sted for ruden. Placeringen udføres, når retningen er angivet ved hjælp af JTabbedPane.TOP, JTabbedPane.BOTTOM, JTabbedPane.LEFT eller JTabbedPane.RIGHT.

3. JTabbedPane (int tabPlacement, int tabLayoutPolicy)

En tom faneblade oprettes, når denne konstruktør bruges. Dette giver privilegiet at bestemme placeringen af ​​fanebladet det samme som JTabbedPane (int tabPlacement) konstruktør.

Det giver også programmereren mulighed for at vælge fanebladets politik. Dette gør det muligt for programmereren at kontrollere, hvordan fanerne vises. Politikens fanelayout er enten indstillet til JTabbedPane.SCROLL_TAB_LAYOUT eller JTabbedPane.WRAP_TAB_LAYOUT. Som standard er politikken setoWRAP_TAB_LAYOUT.

Når politikken er indstillet til SCROLL_TAB_LAYOUT, bliver fanebladene rullefærdige, og en knap til at rulle fanerne, venstre eller højre eller opad, vises i din faneblade.

JTabbedPane-eksempel

Her diskuterer vi Eksempel på JTabbedPane i Java i detaljer:

Endelig lidt øvelse, skal vi begynde?

Dette er den del, hvor vi vil prøve at tilføje fanebladet i vores JFrame. Vi bruger javax.swing.JTabbedPane-pakken vil give os funktionen til at tilføje faner på vores ramme.

Følgende er et eksempel på en kode, der bruger JTabbedPane til at oprette faner i vores ramme.

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


Når ovenstående program kører, får vi følgende vindue som output.

I ovenstående eksempel tilføjede vi faner til vores JFrame og gav forskellige navne på vores faner som 'Én', 'To' osv. Vi kan også tilføje forskellige komponenter under vores forskellige faner ved hjælp af en simpel kodelinje som nedenfor.

Vi oprettede et objekt til radioknappen, r1, og derefter blev dette objekt brugt til at føje radioknapper til panelet One, dvs. p1.

Og 'Radio Button'-komponenten vises under vores første panel, hvor vi tilføjede det.

Brug af JTabbedPane-konstruktører

Vi har allerede brugt konstruktører som JTabbedPane (int tabPlacement) eller JTabbedPane (int tabPlacement, int tabLayoutPolicy) i vores program, men vi har stadig ikke set, at det er en effekt.

Forstå dette, vi oprettede Java-klassen for os selv og kaldte derefter vores konstruktør, JTP_Layout (se koden). Derefter sætter vi argumenter som setTabLayoutPolicy til SCROLL_TAB_LAYOUT ved hjælp af vores klasses objekt.

Som nævnt ovenfor, når tablayout-politikken er indstillet til SCROLL, giver den brugeren mulighed for at rulle faner i en retning ved hjælp af en knap.

Som illustration øgede jeg antallet af faner i vores program og satte politikken til SCROLL, se det er effekten:

Du kan se en rulleknap i højre hjørne, som giver brugeren mulighed for at gå til venstre til højre ved hjælp af denne knap.

Det andet sådanne argument, der tilføjes til vores konstruktør, er setTabPlacement, som er som omtalt ovenfor, er som standard indstillet til TOP. Men vores konstruktør hjælper os med at bestemme dette ved at indstille faneplaceringen til BOTTOM eller VENSTRE eller HØJRE.

Vi havde allerede en sådan kode offline i vores program, men kommenterede (se koden), når effekten fjernes, se effekten.

Bemærk, at når vi brugte tabbedPane.setTabPlacement (JTabbedPane.BOTTOM), blev vores faner flyttet til bunden af ​​rammen.

Her er det vigtigt at bemærke, at der ikke er behov for nogen 'Fejlhåndtering', vores JTabbedPane-objekt håndterer dine mus- og tastaturstrøg eller begivenheder. Hvis du stadig ønsker lignende funktioner uden fane-grænsefladen, kan du bruge et kortlayout i stedet for en faneblade.

I sidste ende, hvis sagt i enkle ord, til oprettelse af vores faneblade, skal du øjeblikkeligt indstille JTabbedPane, derefter oprette komponenter, der skal vises, og derefter tilføje disse komponenter til den ønskede fane.

Det var det, det var let ikke?

Anbefalede artikler

Dette er en guide til JTabbedPane i Java. Her diskuterer vi introduktionen til JTabbedPane og JTabbedPane konstruktører sammen med dets eksempel. Du kan også se på de følgende artikler for at lære mere-

  1. Konstruktør og Destructor i Java
  2. JScrollPane i Java
  3. JComboBox i Java
  4. JDialog i Java
  5. Java-implementeringsværktøjer
  6. JFrame i Java

Kategori: