Foros del Web » Programación para mayores de 30 ;) » Java »

problema con tablas

Estas en el tema de problema con tablas en el foro de Java en Foros del Web. Saludos compañeros, tengo mi defaultTableModel hecho de la siguiente manera: static public void crear_modelo(LinkedList [][] mat) { modelo_tabla = new DefaultTableModel() { private static final ...
  #1 (permalink)  
Antiguo 13/03/2008, 14:15
 
Fecha de Ingreso: marzo-2008
Mensajes: 19
Antigüedad: 16 años, 1 mes
Puntos: 0
problema con tablas

Saludos compañeros, tengo mi defaultTableModel hecho de la siguiente manera:

static public void crear_modelo(LinkedList [][] mat)
{
modelo_tabla = new DefaultTableModel() {
private static final long serialVersionUID = 1L;
public boolean isCellEditable(int j, int k)
{
return false;
} };

Object [] column=new Object[mat.length+1];
for (int c=0; c<mat.length+1; c++)
{
column[c]=new Integer(c);
modelo_tabla.addColumn(column);
};


Object [] cabecera=new Object[mat.length+1];
cabecera[0]=new String();
for (int col=1; col<mat.length+1; col++)
{
Integer n=new Integer(col-1);
cabecera[col]=new String("q"+n);
}


String [] data=new String[mat.length+1];

int maximo=0;

for (int row=0; row<mat.length; row++)
{
Integer a=new Integer(row);
data[0]=new String("q"+a.toString());

for (int col=1; col<mat[row].length+1; col++)
{
String s_total=new String();

for (int pos=0; pos<mat[row][col-1].size(); pos++)
{
s_total+=mat[row][col-1].get(pos);
if (pos<mat[row][col-1].size()-1) s_total+=", ";
};

System.out.println("en "+col+ " "+s_total);
data[col]=s_total;

if (data[col].length()>maximo) maximo=data[col].length();
};
modelo_tabla.addRow(data);
}
}


y luego el modelo lo meto dentro de una tabla:
JTable tab=new JTable();
tab.setModel(modelo);

y para presentar dicha tabla quiero que si pasa de 300, 100 de tamaño la ponga en un scrollpane y si no, que la presente normal, pero en este ultimo caso, la presenta dentro del panel de esas dimensiones, pero al ser la tabla mas pequeña que el panel, el panel sobrante no lo elimina.

el codigo que pongo es:

JTable tab=new JTable();
tab.setModel(Modelo_tabla.get_modelo_tabla());
tab.setRowSelectionAllowed(false);
tab.getTableHeader().setReorderingAllowed(false);
tab.setTableHeader(null);

if ((tab.getRowHeight(0))*(Modelo_tabla.get_modelo_ta bla().getRowCount())>75)
{
JScrollPane jsp=new JScrollPane(tab);
jsp.setPreferredSize(new java.awt.Dimension(200,45));
panel_aux.add(jsp, constraints);
}
else
{
panel_aux.add(tab, constraints);
}
panel_aux.doLayout();
panel_aux.updateUI();

2. tambien quiero que aparezca una cabecera en la tabla para poder redimensionar dichas celdas en caso de que sea necesario (cuando el contenido de la celda sea mayor que su tamaño). como lo soluciono ???

Espero que me haya explicado.

Por favor, ayudenme, es que es para un proyecto de final d carrera y me estoy volviendo locooo.
Muchas gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:18.