elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  JTable y Layouts
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: JTable y Layouts  (Leído 5,729 veces)
Kerber0

Desconectado Desconectado

Mensajes: 142

Yo me Amo!


Ver Perfil
JTable y Layouts
« en: 16 Octubre 2009, 02:49 am »

Hola gente, yo trabajo sin layouts
Código:
this.setLayout(null)
y quiero trabajar con un JTable, estuve mirando unos codigos y funciona perfecto de esta forma:

Código:
import javax.swing.JTable;
import javax.swing.JScrollPane;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.*;
import java.awt.event.*;


public class  Ventana extends JFrame {
     public  Ventana() {
        super("Ejemplo 1");

        //array bidimencional de objetos con los datos de la tabla
        Object[][] data = {
            {"Mary", "Campione", "Esquiar", new Integer(5), new Boolean(false)},
            {"Lhucas", "Huml", "Patinar", new Integer(3), new Boolean(true)},
            {"Kathya", "Walrath", "Escalar", new Integer(2), new Boolean(false)},
            {"Marcus", "Andrews", "Correr", new Integer(7), new Boolean(true)},
            {"Angela", "Lalth", "Nadar", new Integer(4), new Boolean(false)}
        };

        //array de String's con los títulos de las columnas
        String[] columnNames = {"Nombre", "Apellido", "Pasatiempo",
                                   "Años de Practica", "Soltero(a)"};

        //se crea la Tabla
        final JTable table = new JTable(data, columnNames);
        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) {
        Ventana frame = new  Ventana();
        frame.pack();
        frame.setVisible(true);
    }
}

Ahora yo lo pongo del sgte modo:

Código:
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.awt.event.*;


public class Ventana extends JFrame
{


    Object[][] data = {
            {"Mary", "Campione", "Esquiar", new Integer(5), new Boolean(false)},
            {"Lhucas", "Huml", "Patinar", new Integer(3), new Boolean(true)},
            {"Kathya", "Walrath", "Escalar", new Integer(2), new Boolean(false)},
            {"Marcus", "Andrews", "Correr", new Integer(7), new Boolean(true)},
            {"Angela", "Lalth", "Nadar", new Integer(4), new Boolean(false)}
        };


        String[] columnNames = {"Nombre", "Apellido", "Pasatiempo",
                                   "Años de Practica", "Soltero(a)"};


JTable table = new JTable(data,columnNames);
JScrollPane scrollPane = new JScrollPane(table);



    public Ventana()
    {


    this.setLayout(null);
        this.getContentPane().add(table);
    table.setBounds(20, 20, 200, 200);
        this.setSize(600,500);
        this.setTitle("Tabla");
        this.show();
       
    }


    public static void main(String []args)
    {
        new Ventana();

    }
}

Y no me muesta los nombres de las columnas, es decir no me muestra  String[] columnNames = {"Nombre", "Apellido", "Pasatiempo",
                                   "Años de Practica", "Soltero(a)"};, los nombres de las columnas.

Por que pasa eso?

Existe alguna otra forma que no sea de trabajar con los layouts que no sea la de indicandole los lugares (setBounds) porque nunca pude agregar un scrollpane.

Tambien lei que conviene utilizar el JTable con DefaultTableModel, pero tambien eh tenido algunos problemas.

Gracias


En línea

1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: JTable y Layouts
« Respuesta #1 en: 16 Octubre 2009, 05:00 am »

Hola

Que te parce si del primer ejemplo que tienes agregamos las siguientes lineas de código..

Código:
import javax.swing.*;
import javax.swing.JFrame;
import java.awt.*;
import java.awt.event.*;

public class  Ventana extends JFrame {
     public  Ventana() {
        super("Ejemplo 1");

        getContentPane().setLayout(null);//Colocar esquema al contenedor

        //array bidimencional de objetos con los datos de la tabla
        Object[][] data = {
            {"Mary", "Campione", "Esquiar", new Integer(5), new Boolean(false)},
            {"Lhucas", "Huml", "Patinar", new Integer(3), new Boolean(true)},
            {"Kathya", "Walrath", "Escalar", new Integer(2), new Boolean(false)},
            {"Marcus", "Andrews", "Correr", new Integer(7), new Boolean(true)},
            {"Angela", "Lalth", "Nadar", new Integer(4), new Boolean(false)}
        };

        //array de String's con los títulos de las columnas
        String[] columnNames = {"Nombre", "Apellido", "Pasatiempo",
                                   "Años de Practica", "Soltero(a)"};

        //se crea la Tabla
        final JTable table = new JTable(data, columnNames);
        table.setPreferredScrollableViewportSize(new Dimension(500, 70));


        //Creamos un JscrollPane y le agregamos la JTable
        JScrollPane scrollPane = new JScrollPane(table);
        scrollPane.setBounds(30,30,500,70);//Colocar posicion y dimension al JScrollPanel
        

        //Agregamos el JScrollPane al contenedor
        getContentPane().add(scrollPane);


        //manejamos la salida
        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });
    }

    public static void main(String[] args) {
        Ventana frame = new  Ventana();
        frame.pack();
        frame.setSize(500, 600);//Colocar Tamaño al JFrame
        frame.setVisible(true);
    }
}

Perdon no sé como colocarlas en color, pero son estas..

Código:
getContentPane().setLayout(null);//Colocar esquema al contenedor
scrollPane.setBounds(30,30,500,70);//Colocar posicion y dimension al JScrollPanel
frame.setSize(500, 600);//Colocar Tamaño al JFrame

Espero qeu te sirva

Saludos


« Última modificación: 16 Octubre 2009, 05:02 am por Darhius » En línea

abc
1mpuls0


Desconectado Desconectado

Mensajes: 1.186


Ver Perfil
Re: JTable y Layouts
« Respuesta #2 en: 16 Octubre 2009, 05:15 am »

Y respecto al código de tu ejemplo que te parece si te ordenas un poquito mas (no te lo tomes a mal) y hacemos lo siguiente

Código:
import java.awt.*;
import javax.swing.*;

public class Ventana extends JFrame
{

    Object[][] data = {
                                {"Mary", "Campione", "Esquiar", new Integer(5), new Boolean(false)},
                                {"Lhucas", "Huml", "Patinar", new Integer(3), new Boolean(true)},
                                {"Kathya", "Walrath", "Escalar", new Integer(2), new Boolean(false)},
                                {"Marcus", "Andrews", "Correr", new Integer(7), new Boolean(true)},
                                {"Angela", "Lalth", "Nadar", new Integer(4), new Boolean(false)}
                              };
   String[] columnNames = {"Nombre", "Apellido", "Pasatiempo",
                                   "Años de Practica", "Soltero(a)"};
   JTable table = new JTable(data,columnNames);


    public static void main(String []args)
    {
        new Ventana();

    }

    public Ventana()
    {
        setTitle("Tabla");
       getContentPane().setLayout(null);

        table.setPreferredScrollableViewportSize(new Dimension(500, 70));
        JScrollPane scrollPane = new JScrollPane(table);
        scrollPane.setBounds(30,30,500,70);

        getContentPane().add(scrollPane);

        setSize(600,500);
        show();
    }
}

Cualquier duda ya sabes..

Saludos
« Última modificación: 23 Octubre 2009, 03:44 am por Darhius » En línea

abc
Kerber0

Desconectado Desconectado

Mensajes: 142

Yo me Amo!


Ver Perfil
Re: JTable y Layouts
« Respuesta #3 en: 16 Octubre 2009, 09:46 am »

Muchisimas gracias!

Perdon por el desorden tratare de ser mas ordenado,

Gracias!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con Jtable
Java
zenydark 1 3,053 Último mensaje 27 Diciembre 2010, 03:56 am
por 1mpuls0
jtable manejo
Java
geanca 3 4,181 Último mensaje 19 Febrero 2012, 16:13 pm
por jperezmonge
[Qt] Creación en horizontal por layouts?
Programación C/C++
Puntoinfinito 4 2,468 Último mensaje 18 Marzo 2013, 22:26 pm
por Puntoinfinito
Duda sobre Layouts
Java
Drewermerc 8 4,360 Último mensaje 29 Noviembre 2014, 20:12 pm
por Drewermerc
JTable sobre JTable
Java
CartosP 6 3,908 Último mensaje 18 Marzo 2018, 13:44 pm
por CartosP
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines