Sie sind auf Seite 1von 4

Tutorial JTable

Para empezar a usar esta herramienta primero debes saber en que consiste, es decir,
qu es? para qu sirve?. Para ello, voy a hacer una pequea definicin de la clase
JTable y luego explicar su uso y otras aplicaciones o clases ligadas a ella.
JTable es una herramienta visual de Java que sirve para poder dibujar tablas, con sus
respectivas filas y columnas en donde puedes ingresar el dato que tu desees, como por
ejemplo: tu nombre, tu rut, tu apellido, entre otros.
Para poder usar bien la herramienta JTable, es necesario trabajar con otras
herramientas que estn vinculadas a su desarrollo, para poder as tener un mejor
funcionamiento en el momento de implementar una tabla. Estas herramientas son:
1.- DefaultTableModel
2.- JScrollPane
3.- JFrame
4.- JPanel
5.- awt(abstract windows toolkit o herramienta de ventana abstracta)
El DefaultTableModel es una clase que implementa TableModelque contiene todos
los mtodos necesarios para modificar datos en su interior, aadir filas o columnas y
darle a cada columna el nombre que se desee. Para
utilizar DefaultTableModel debemos importarla y luego declararla para luego poder
usar la clase JTable, un ejemplo es:
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
DefaultTableModel modelo = new DefaultTableModel();
JTable tabla = new JTable (modelo);
La siguiente herramienta es el JScrollPane, es una clase importada en swing que
permite asociarle una pequea vista o ventana deslizable o corrediza, que permite solo
que se vea una parte de dicho complemento en la tabla. Para poder usarlo, importamos
la clase y luego la declaramos, un ejemplo sera:
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.JScrollPane;
DefaultTableModel modelo = new DefaultTableModel();
JTable tabla = new JTable (modelo);
JSrollPane scrollpane = new JScrollPane(tabla);
Un JFrame es una clase que implementa como una instancia un frame que es una
ventana con decoraciones, tales como: bordes, ttulos y botones(conos y para
cerrar la ventana). Para poder utilizar esta herramienta hacemos los siguiente:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class HolaMundo{


public static void main(String [] args){
JFrame frame = new JFrame("HolaMundoSwing");
......
frame.pack();
frame.setVisible(true);
}
}
Un JPanel es un contenedor ligero genrico que tiene la finalidad de "caja" donde
tu puedes ir insertando cosas y as puedes manejarlos como una agrupacin. Un
ejemplo donde se implementa esta herramienta es:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class PanelSolo {
public static void main(String[] args) {
JFrame f = new JFrame("Ejemplo");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Panel p0 = new Panel();
Panel p1 = new Panel();
Panel p2 = new Panel();
Panel p3 = new Panel();
Panel p4 = new Panel();
f.add(p0,"North");
f.add(p1,"West");
f.add(p2,"South");
f.add(p3,"Center");
f.add(p4,"East");
// Coloreo para distinguir los paneles.
p0.setBackground(Color.blue);
p3.setBackground(Color.white);
p4.setBackground(Color.red);
f.pack();
f.setVisible(true);
}

Por ltimo esta el paquete awt(abstract windows toolkit o herramienta de ventana


abstracta), es un kit de herramientas de grficos, interfaz de usuario, y sistema de
ventanas independientes de la plataforma de Java.
Luego de explicar cada definicin de las herramientas y un ejemplo de uso, vamos
ahora a mostrar un ejemplo completo con todos los elementos que son utilizados
para complementar la tabla. El ejemplo es el siguiente:
import
import
import
import
import

javax.swing.JTable;
javax.swing.table.DefaultTableModel;
javax.swing.JScrollPane;
javax.swing.JPanel;
javax.swing.JFrame;

import java.awt.*;
import java.awt.event.*;
public class EjemploTabla extends JFrame {
public EjemploTabla() {
super("Tabla de usuarios");
//array bidimencional de objetos con los datos de la tabla
Object[][] data = {"Daniel", "Villar","Esquiar", new Integer(5), new
Boolean(false)},
{"Carlos", "Villar","Patinar", new Integer(3), new Boolean(true)},
{"Karinna", "Villar","Escalar", new Integer(2), new Boolean(false)},
{"Mario", "Diaz","Correr", new Integer(7), new Boolean(true)},
{"Sylvia", "Uribe","Modelar", new Integer(4), new Boolean(false)}};
//array de String's con los ttulos de las columnas
String[] columnNames = {"Nombre","Apellido","Pasatiempo","Aos de
Practica","Soltero(a)"};
//creamos el Modelo de la tabla con los datos anteriores
DefaultTableModel dtm= new DefaultTableModel(data, columnNames);
//se crea la Tabla con el modelo DefaultTableModel
final JTable table = new JTable(dtm);
// una vez creada la tabla con su modelo
// podemos agregar columnas
String[] newColumn= {"Flan","Pastel","Helado","Barquillo","Manzana" };
dtm.addColumn("Postre",newColumn);
//filas
Object[] newRow={"Pepe", "Grillo","Tenis", new Integer(5), new
Boolean(false),
"Pera"};
dtm.addRow(newRow);
//o modificar una celda en especifico
dtm.setValueAt("Catherine", 1, 1);
//se define el tamao
table.setPreferredScrollableViewportSize(new Dimension(500, 70));
//Creamos un JscrollPane y le agregamos la JTable
JScrollPane scrollPane = new JScrollPane(table);
//Agregamos el JScrollPane al contenedor
getContentPane().add(scrollPane, BorderLayout.CENTER);
//manejamos la salida
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public static void main(String[] args) {
EjemploTabla frame = new EjemploTabla();

frame.pack();
frame.setVisible(true);

Ejercicio
-Realizar un JTable simple con su Horario de la semana.

Das könnte Ihnen auch gefallen