Inleiding tot JTabbedPane in Java

De klasse JTabbedPane is een van de vele klassen (zoals JButton, JTextArea, JMenu, JTextField, enz.) Dat het javapakket 'javax.swing' voorziet in Java swing API's.

Het Java Swing-pakket maakt deel uit van de JFC-basisklassen. Deze basisklassen worden gebruikt om grafische gebruikersinterfaces, op vensters gebaseerde toepassingen te maken met behulp van beschikbare GUI-componenten, waardoor een programmeur gemakkelijker desktop-toepassingen kan ontwikkelen. Ze zijn volledig geschreven in Java bovenaan AWT, abstracte Windows Toolkit.

Maar in tegenstelling tot AWT, bieden Java Swing-pakketten platformonafhankelijke componenten. Ook deze componenten zijn relatief licht van gewicht.

Aan het einde van dit artikel kun je Swing JComponents zoals JTabbedPane toevoegen aan een AWT-container. U kunt ook de positie van uw paneel en frame instellen. U leert ook hoe u een verschuifbaar tabblad kunt maken.

Wat is JTabbedPane?

JTabbedPane is een van de klassen die worden aangeboden door het swingpakket in Java. Het is erg handig, omdat het de gebruiker de flexibiliteit biedt om te schakelen tussen verschillende groepen componenten die hij wenst te zien, door eenvoudig op een van de tabbladen te klikken. De tabbladen kunnen verschillende titels of pictogrammen krijgen.

Hier is een alledaags voorbeeld van een dergelijk venster, dat verschillende tabbladen heeft die toegankelijk zijn door op de tabbladen te klikken.

Een eenvoudig 'eigenschappen'-venster van een lokale schijf (hier, lokale schijf F: eigenschappenvenster op mijn systeem) op uw computersysteem heeft meerdere tabbladen, genaamd Algemeen, Tools, Hardware, enz. Die u kunt openen, door erop te klikken van hen is een perfect voorbeeld van de ruiten met tabs.

Met andere woorden, het JTabbedPane helpt u om verschillende componenten op dezelfde plek te plaatsen. De gebruiker kiest eenvoudig welk onderdeel hij wil zien door het gewenste tabblad te kiezen of erop te klikken.

JTabbedPane tabblad Indexering en plaatsing

De tabbladen worden weergegeven door een index, die wordt bepaald op basis van de plaats of de positie waarin het tabblad is toegevoegd.

Laten we aannemen dat u uw eerste tabblad hebt toegevoegd om dit te begrijpen. Dan is de index gelijk aan '0' en heeft uw volgende tabblad een index gelijk aan '1' en volgens de mode is de index van uw laatst toegevoegde tabblad gelijk aan 'tab count minus 1'.

De klassen van het deelvenster met tabbladen gebruiken één selectiemodel dat 'een set tabindexen' vertegenwoordigt, evenals de 'momenteel geselecteerde index', dwz de index van het geselecteerde tabblad.

Standaard worden de tabbladen op de TOP-locatie geplaatst, zoals u kunt zien in het eigenschappenvenster met tabbladen in het bovenstaande venster. U kunt deze plaatsing van het tabblad in een van de richtingen wijzigen, zoals LINKS, RECHTS of Onder met behulp van de methode setTabPlacement.

JTabbedPane Constructors in Java

Tijdens het gebruik van JTabbedPane zullen we ook de constructors gebruiken die zijn gedifferentieerd op basis van de rechten die ze bieden.

De veelgebruikte constructors tijdens het gebruik van JTabbedPane worden als volgt weergegeven:

1. JTabbedPane ()

De constructor JTabbedPane () maakt een leeg TabbedPane. Wanneer we de constructor JTabbedPane () gebruiken, wordt het paneel gemaakt zonder enige specificatie voor de plaatsing. Het tabblad wordt dus op de standaardplaats TOP geplaatst, zoals hierboven besproken met JTabbedPane.TOP.

2. JTabbedPane (int tabPlacement)

Deze constructor maakt een leeg TabbedPane. Het biedt het voorrecht om de richting of plaats voor het paneel te bepalen. De plaatsing wordt gedaan wanneer de richting wordt opgegeven met JTabbedPane.TOP, JTabbedPane.BOTTOM, JTabbedPane.LEFT of JTabbedPane.RIGHT.

3. JTabbedPane (int tabPlacement, int tabLayoutPolicy)

Er wordt een leeg venster met tabs gemaakt wanneer deze constructor wordt gebruikt. Dit biedt het voorrecht om de plaatsing voor het tabblad te bepalen op dezelfde manier als de constructor JTabbedPane (int tabPlacement).

Hiermee kan de programmeur ook het beleid voor tablay-out bepalen. Hiermee kan de programmeur bepalen hoe de tabbladen worden weergegeven. Het beleid voor tablay-out is ingesteld op JTabbedPane.SCROLL_TAB_LAYOUT of JTabbedPane.WRAP_TAB_LAYOUT. Standaard is het beleid ingesteld op WRAP_TAB_LAYOUT.

Als het beleid is ingesteld op SCROLL_TAB_LAYOUT, kunnen de tabbladen worden verschoven en wordt een knop voor het schuiven van de tabbladen, van links naar rechts of van boven naar beneden, weergegeven in uw deelvenster met tabs.

JTabbedPane Voorbeeld

Hier bespreken we Voorbeeld van JTabbedPane in Java in details:

Eindelijk wat oefening, zullen we beginnen?

Dit is het gedeelte waar we zullen proberen het deelvenster met tabbladen in ons JFrame toe te voegen. We zullen het javax.swing.JTabbedPane-pakket gebruiken om ons tabbladen aan ons frame toe te voegen.

Hierna volgt een voorbeeldcode die JTabbedPane gebruikt om tabbladen in ons frame te maken.

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


Wanneer het bovenstaande programma wordt uitgevoerd, krijgen we het volgende venster als uitvoer.

In het bovenstaande voorbeeld hebben we tabbladen toegevoegd aan ons JFrame en verschillende namen aan onze tabbladen gegeven als 'Eén', 'Twee', enz. We kunnen ook verschillende componenten onder onze verschillende tabbladen toevoegen met behulp van een eenvoudige coderegel zoals hieronder.

We hebben een object gemaakt voor het keuzerondje, r1 en vervolgens is dit object gebruikt om keuzerondjes toe te voegen aan het paneel Eén, dwz p1.

En het onderdeel 'Radioknop' verschijnt onder ons eerste paneel, waar we het hebben toegevoegd.

JTabbedPane Constructors gebruiken

We hebben al Constructors zoals JTabbedPane (int tabPlacement) of JTabbedPane (int tabPlacement, int tabLayoutPolicy) gebruikt in ons programma, maar we hebben nog steeds geen effect gezien.

Begrijp dit, we hebben de Java-klasse voor onszelf gemaakt en hebben onze constructor JTP_Layout genoemd (zie de code). Vervolgens stellen we argumenten zoals setTabLayoutPolicy in op SCROLL_TAB_LAYOUT met behulp van het object van onze klasse.

Zoals hierboven vermeld, wanneer het tablayout-beleid is ingesteld op SCROLL, kan de gebruiker met een knop door de tabbladen bladeren.

Ter illustratie heb ik het aantal tabbladen in ons programma verhoogd en het beleid ingesteld op SCROLL, zie het is het effect:

U ziet een schuifknop in de rechterhoek, waarmee de gebruiker met deze knop van links naar rechts kan gaan.

Het andere argument dat aan onze constructor is toegevoegd, is setTabPlacement, dat zoals hierboven besproken standaard op TOP is ingesteld. Maar onze constructor helpt ons dit te beslissen door de plaatsing van het tabblad in te stellen op BODEM of LINKS of RECHTS.

We hadden dergelijke code al offline in ons programma, maar hebben gereageerd (zie de code), zie het effect wanneer de reactie is verwijderd.

Merk op dat wanneer we tabbedPane.setTabPlacement (JTabbedPane.BOTTOM) gebruikten, onze tabbladen naar de onderkant van het frame zijn verplaatst.

Hier is het belangrijk op te merken dat er geen 'foutafhandeling' nodig is, ons JTabbedPane-object verwerkt uw muis- en toetsenbordaanslagen of -gebeurtenissen. Als u echter vergelijkbare functionaliteit wilt zonder de tabbladinterface, kunt u een kaartindeling gebruiken in plaats van een paneel met tabbladen.

Uiteindelijk, als het in eenvoudige woorden wordt gezegd, maakt u JTabbedPane onmiddellijk aan voor het maken van ons deelvenster met tabbladen, maakt u vervolgens componenten die moeten worden weergegeven en voegt u deze componenten toe aan het gewenste tabblad.

Dat is alles, het was gemakkelijk toch?

Aanbevolen artikelen

Dit is een handleiding voor JTabbedPane in Java. Hier bespreken we de inleiding tot de constructeurs JTabbedPane en JTabbedPane samen met het voorbeeld. U kunt ook de volgende artikelen bekijken voor meer informatie-

  1. Constructor en Destructor in Java
  2. JScrollPane in Java
  3. JComboBox in Java
  4. JDialog in Java
  5. Hulpmiddelen voor Java-implementatie
  6. JFrame in Java