Introduction à JTabbedPane en Java

La classe JTabbedPane est l'une des nombreuses classes (telles que JButton, JTextArea, JMenu, JTextField, etc.) que le package java 'javax.swing' fournit pour les API swing java.

Le package Java Swing fait partie des classes de base de Java, JFC.Ces classes de base sont utilisées pour créer des interfaces utilisateur graphiques, des applications basées sur des fenêtres à l'aide des composants GUI disponibles, ce qui facilite la tâche d'un programmeur dans le développement d'applications de bureau. Ils sont écrits entièrement en java en haut de AWT, Abstract Windows Toolkit.

Mais contrairement à AWT, les packages Java Swing fournissent des composants indépendants de la plate-forme. Ces composants sont également relativement légers.

À la fin de cet article, vous pourrez ajouter Swing JComponents comme JTabbedPane sur un conteneur AWT. Vous pourrez également définir la position de votre panneau et de votre cadre. Vous apprendrez également à créer un panneau à onglets déroulant.

Qu'est-ce que JTabbedPane?

JTabbedPane est l'une des classes fournies par le package swing en java. Il est très utile, car il offre la flexibilité à l'utilisateur de basculer entre les différents groupes de composants qu'il souhaite voir, en cliquant simplement sur l'un des onglets. Les onglets peuvent avoir différents titres ou icônes.

Voici un exemple courant d'une telle fenêtre, qui a plusieurs onglets accessibles en cliquant sur les onglets.

Une simple fenêtre «propriétés» d'un disque local (ici, Disque local F: fenêtre Propriétés sur mon système) sur votre système informatique comporte plusieurs onglets, nommés Général, Outils, Matériel, etc. auxquels vous pouvez accéder, en cliquant sur un d'entre eux, est un parfait exemple des volets à onglets.

En d'autres termes, le JTabbedPane vous aide à partager plusieurs composants au même endroit. L'utilisateur choisit facilement le composant qu'il souhaite voir en choisissant ou en cliquant sur l'onglet souhaité.

Indexation et placement de l'onglet JTabbedPane

Les onglets sont représentés par un index, qui est décidé en fonction de l'endroit ou de la position dans laquelle l'onglet a été ajouté.

Pour comprendre cela, supposons que vous ayez ajouté votre premier onglet. Ensuite, son index sera égal à '0' et votre prochain onglet aura un index égal à '1' et selon la mode, l'index de votre dernier onglet ajouté sera égal à 'tab count moins 1'.

Les classes du volet à onglets utilisent un modèle de sélection unique qui représente «un ensemble d'index d'onglets» ainsi que «l'index actuellement sélectionné», c'est-à-dire l'index de l'onglet sélectionné.

Par défaut, les onglets sont placés à l'emplacement TOP, comme vous pouvez le voir dans le volet à onglets des propriétés de la fenêtre ci-dessus. Vous pouvez modifier le placement de cet onglet dans l'une des directions telles que GAUCHE, DROITE ou Bas en utilisant une méthode appelée, méthode setTabPlacement.

Constructeurs JTabbedPane en Java

En utilisant JTabbedPane, nous utiliserons également ses constructeurs qui sont différenciés en fonction des privilèges qu'ils fournissent.

Les constructeurs couramment utilisés lors de l'utilisation de JTabbedPane sont répertoriés comme suit:

1. JTabbedPane ()

Le constructeur JTabbedPane () crée un TabbedPane vide. Lorsque nous utilisons le constructeur JTabbedPane (), il crée le volet sans aucune spécification pour son placement. Ainsi, l'onglet est placé à son emplacement par défaut, TOP, comme indiqué ci-dessus à l'aide de JTabbedPane.TOP.

2. JTabbedPane (int tabPlacement)

Ce constructeur crée un TabbedPane vide. Il offre le privilège de décider de la direction ou de l'emplacement du volet. Le placement est effectué lorsque la direction est spécifiée à l'aide de JTabbedPane.TOP, JTabbedPane.BOTTOM, JTabbedPane.LEFT ou JTabbedPane.RIGHT.

3. JTabbedPane (int tabPlacement, int tabLayoutPolicy)

Un volet à onglets vide est créé lorsque ce constructeur est utilisé. Cela donne le privilège de décider de l'emplacement du volet d'onglets de la même manière que le constructeur JTabbedPane (int tabPlacement).

Il permet également au programmeur de décider de la politique de disposition des onglets. Cela permet au programmeur de contrôler la façon dont les onglets seront affichés. La stratégie de disposition des onglets est définie sur JTabbedPane.SCROLL_TAB_LAYOUT ou JTabbedPane.WRAP_TAB_LAYOUT. Par défaut, la stratégie est settoWRAP_TAB_LAYOUT.

Avec la stratégie définie sur SCROLL_TAB_LAYOUT, les onglets peuvent défiler et un bouton pour faire défiler les onglets, de gauche à droite ou de haut en bas, s'affiche dans votre volet à onglets.

Exemple JTabbedPane

Ici, nous discutons en détail de l'exemple de JTabbedPane en Java:

Enfin un peu d'exercice, allons-nous commencer?

C'est la partie où nous allons essayer d'ajouter le volet à onglets dans notre JFrame. Nous utiliserons le package javax.swing.JTabbedPane qui nous fournira la fonctionnalité pour ajouter des onglets sur notre cadre.

Voici un exemple de code, utilisant JTabbedPane pour créer des onglets dans notre cadre.

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


Lorsque le programme ci-dessus s'exécute, nous obtenons la fenêtre suivante en sortie.

Dans l'exemple ci-dessus, nous avons ajouté des onglets sur notre JFrame et donné des noms différents à nos onglets comme `` Un '', `` Deux '', etc. Nous pouvons également ajouter différents composants sous nos différents onglets en utilisant une ligne de code simple comme ci-dessous.

Nous avons créé un objet pour le bouton radio, r1, puis cet objet a été utilisé pour ajouter des boutons radio au panneau One, c'est-à-dire p1.

Et le composant 'Radio Button' apparaîtra sous notre premier panneau, où nous l'avons ajouté.

Utilisation des constructeurs JTabbedPane

Nous avons déjà utilisé des constructeurs tels que JTabbedPane (int tabPlacement) ou JTabbedPane (int tabPlacement, int tabLayoutPolicy) dans notre programme, mais nous n'avons toujours pas vu que c'était un effet.

Comprenez cela, nous avons créé la classe Java pour nous-mêmes, puis appelé notre constructeur, JTP_Layout (voir le code). Ensuite, nous définissons des arguments tels que setTabLayoutPolicy sur SCROLL_TAB_LAYOUT en utilisant l'objet de notre classe.

Comme mentionné ci-dessus, lorsque la stratégie de tablayout est définie sur SCROLL, elle permet à l'utilisateur de faire défiler les onglets dans une direction à l'aide d'un bouton.

Pour illustration, j'ai augmenté le nombre d'onglets dans notre programme et défini la stratégie sur SCROLL, voyez c'est l'effet:

Vous pouvez voir un bouton de défilement dans le coin droit, qui permet à l'utilisateur d'aller de gauche à droite en utilisant ce bouton.

L'autre argument de ce type ajouté à notre constructeur est setTabPlacement, qui, comme expliqué ci-dessus, est défini sur TOP par défaut. Mais notre constructeur nous aide à décider cela en définissant le placement de l'onglet sur BOTTOM ou LEFT ou RIGHT.

Nous avions déjà un tel code hors ligne dans notre programme, mais commenté (voir le code), lorsque le commentaire est supprimé, voyez l'effet.

Notez que lorsque nous avons utilisé tabbedPane.setTabPlacement (JTabbedPane.BOTTOM), nos onglets ont été déplacés au bas du cadre.

Ici, il est important de noter qu'il n'y a pas besoin de `` gestion des erreurs '', notre objet JTabbedPane gère les coups ou les événements de votre souris et de votre clavier. Néanmoins, si vous souhaitez des fonctionnalités similaires sans l'interface à onglets, vous pouvez utiliser une présentation de carte au lieu d'un volet à onglets.

En fin de compte, si cela est dit en termes simples, pour créer notre volet à onglets, instanciez JTabbedPane, puis créez les composants à afficher, puis ajoutez ces composants à l'onglet souhaité.

Ça y est, c'était facile non?

Articles recommandés

Ceci est un guide de JTabbedPane en Java. Nous discutons ici de l'introduction aux constructeurs JTabbedPane et JTabbedPane ainsi que de son exemple. Vous pouvez également consulter les articles suivants pour en savoir plus-

  1. Constructeur et destructeur en Java
  2. JScrollPane en Java
  3. JComboBox en Java
  4. JDialog en Java
  5. Outils de déploiement Java
  6. JFrame en Java