Uso de la clase JTabbedPane

En esta ocasion mostrare como se utiliza la clase JTabbedPane para insertar varias fichas dentro de un JFrame, 3 en este caso. El codigo es el siguiente:

/*
 * Descripcion:  Clase que muestra el uso de la clase JTabbedPane para insertar fichas
 *               dentro de un JFrame.
 * Archivo:      PruebaJTabbedPane.java
 * Fecha:        29/12/2009
 *
 * @author gonzasilve@gmail.com
 */

/*       metodo JTabbedPane.add()
            Primer  argumento:  Titulo de la ficha.
            Segundo argumento:  Icon, icono de la ficha de la ficha.
            Tercer  argumento:  Un objeto Component que representa la GUI a mostrar cuanda se da clic en la ficha.
            Cuarto  argumento:  Una cadena de texto que especifica el ToolTp de la ficha (texto que se muestra al colocar mouse sobre la ficha). */

import javax.swing.*;       // Para poder usar JTabbedPane 
import java.awt.*;          // Para poder usar FlowLayout y  componentes varios

public class PruebaJTabbedPane extends JFrame
{
    JTabbedPane panelFichas = new JTabbedPane();
    Box contAntesDeFicha;
    Box boxContenidoFrame;

    PruebaJTabbedPane(String titulo, int ancho, int alto)
    {
        super(titulo);
        setSize(ancho, alto);

        JPanel panFicha1 = new JPanel(new FlowLayout(FlowLayout.LEFT));
        panFicha1.add(new JLabel("Contenido de la ficha1"));
        ImageIcon iconoFicha1 = new ImageIcon(getClass().getResource("iconoFicha1.gif"));
        panelFichas.addTab("Trabajo", iconoFicha1,panFicha1,"ficha1");

        JPanel panFicha2 = new JPanel(new FlowLayout(FlowLayout.CENTER));
        panFicha2.add(new JLabel("Contenido de la ficha2"));
        ImageIcon iconoFicha2 = new ImageIcon(getClass().getResource("iconoFicha2.gif"));
        panelFichas.addTab("Datos personales", iconoFicha2,panFicha2,"tooltip ficha2");

        JPanel panFicha3 = new JPanel(new FlowLayout(FlowLayout.LEFT));
        JPanel panCampoNombre = new JPanel(new FlowLayout(FlowLayout.LEFT));
            JLabel lblNombre = new JLabel("Nombre");
            JTextField jtfNombre = new JTextField(10);
        panCampoNombre.add(lblNombre);
        panCampoNombre.add(jtfNombre);
        panFicha3.add(panCampoNombre);
        ImageIcon iconoFicha3 = new ImageIcon(getClass().getResource("iconoFicha3.gif"));
        panelFichas.addTab("Otros", iconoFicha3,panFicha3,"tooltip ficha3");

        // Contenido que se insertara antes de agregar las fichas al JFrame
        contAntesDeFicha = Box.createVerticalBox();
        JTextField jtfCajaBusqueda = new JTextField(30);
        JButton btnBuscar = new JButton("Buscar");
        JPanel panBusqueda = new JPanel(new FlowLayout(FlowLayout.LEFT));
        panBusqueda.add(jtfCajaBusqueda);
        panBusqueda.add(btnBuscar);

        // Separamos la caja de busqueda de el borde superior de la ventana
        contAntesDeFicha.add(Box.createVerticalStrut(20));
        contAntesDeFicha.add(panBusqueda);

        JPanel panAntes = new JPanel(new BorderLayout());
        panAntes.add(contAntesDeFicha);
        JPanel panFichas = new JPanel(new BorderLayout());
        panFichas.add(panelFichas);

        boxContenidoFrame = Box.createVerticalBox();
        boxContenidoFrame.add(panAntes);
        boxContenidoFrame.add(panFichas);
        add(boxContenidoFrame);

        this.setLocationRelativeTo(this);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    private void mostrar()
    {
        setVisible(true);
    }

    public static void main(String args[])
    {
        PruebaJTabbedPane prueba1 = new PruebaJTabbedPane("Prueba de JTabbedPane",800,500);
        prueba1.mostrar();
    }
}

y aca una imagen de la ventana que genera este codigo:

Espero le sirva a alguien, hasta pronto
}

Acerca de gonzasilve
Freelance Web Developer.

5 Responses to Uso de la clase JTabbedPane

  1. laura says:

    me sirvio para mi proyecto de sistemas

  2. fxbiandavix says:

    Hola, gracias por tu programa es muy util, me servira de base para mi proyecto de sistemas. 10 de 10

Deja un comentario