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

Ayuda con una JTable

Estas en el tema de Ayuda con una JTable en el foro de Java en Foros del Web. Hola a todos!! Soy novata en java y necesito diseñar una tabla para que muestre los datos desde una base de datos. El nombre de ...
  #1 (permalink)  
Antiguo 18/07/2009, 19:20
 
Fecha de Ingreso: julio-2009
Mensajes: 1
Antigüedad: 14 años, 9 meses
Puntos: 0
Ayuda con una JTable

Hola a todos!!

Soy novata en java y necesito diseñar una tabla para que muestre los datos desde una base de datos. El nombre de las colunmas no varia así que lo defino en el model. El problema es que no muestra esos nombres que defino en el modelo ni la barra de desplazamiento vertical. En la clase implemento otros métodos pero no se que está mal:

public class PanelInfoPredial extends JPanel implements IWindow
{

public JTable getTablaAreas()
{
Object[] datos = new Object[5];
DefaultTableModel dtm= new DefaultTableModel();
dtm.addColumn("Hora");
dtm.addColumn("Rut");
dtm.addColumn("Nombre");
dtm.addColumn("Nombre");
dtm.addColumn("Nombre");
for(int row = 0; row < 5; row++) {
for(int column = 0; column < 5; column++) {
datos[column] = "Celda " + row + "," + column;
}
dtm.addRow(datos);
}

TablaAreas = new JTable(dtm){
TablaAreas.setModel(dtm);
TablaAreas.setBackground(new java.awt.Color(240,240,240,255));
TablaAreas.setBounds(new java.awt.Rectangle(20,100,700,80));
TablaAreas.setAlignmentX(SwingConstants.CENTER);
TablaAreas.setAlignmentY(SwingConstants.CENTER);
TablaAreas.setFont(new Font("Arial", Font.PLAIN, 12));
TablaAreas.setAutoResizeMode(JTable.AUTO_RESIZE_OF F);
TablaAreas.setColumnSelectionAllowed(false);
TablaAreas.setShowHorizontalLines(true);
TablaAreas.setShowVerticalLines(true);
TablaAreas.getTableHeader().setResizingAllowed(fal se);
TablaAreas.getTableHeader().setReorderingAllowed(f alse);

JScrollPane scroll = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
scroll.setViewportView(TablaAreas);
scroll.setColumnHeaderView (TablaAreas.getTableHeader());
this.add(scroll, BorderLayout.CENTER);
return TablaAreas;
}
}
  #2 (permalink)  
Antiguo 19/07/2009, 16:55
 
Fecha de Ingreso: junio-2009
Mensajes: 45
Antigüedad: 14 años, 10 meses
Puntos: 1
Sonrisa Respuesta: Ayuda con una JTable

Cita:
Iniciado por lady_b
Hola a todos!!

Soy novata en java y necesito diseñar una tabla para que muestre los datos desde una base de datos. El nombre de las colunmas no varia así que lo defino en el model. El problema es que no muestra esos nombres que defino en el modelo ni la barra de desplazamiento vertical. En la clase implemento otros métodos pero no se que está mal:

public class PanelInfoPredial extends JPanel implements IWindow
{

public JTable getTablaAreas()
{
Object[] datos = new Object[5];
DefaultTableModel dtm= new DefaultTableModel();
dtm.addColumn("Hora");
dtm.addColumn("Rut");
dtm.addColumn("Nombre");
dtm.addColumn("Nombre");
dtm.addColumn("Nombre");
for(int row = 0; row < 5; row++) {
for(int column = 0; column < 5; column++) {
datos[column] = "Celda " + row + "," + column;
}
dtm.addRow(datos);
}

TablaAreas = new JTable(dtm){
TablaAreas.setModel(dtm);

TablaAreas.setBackground(new java.awt.Color(240,240,240,255));
TablaAreas.setBounds(new java.awt.Rectangle(20,100,700,80));
TablaAreas.setAlignmentX(SwingConstants.CENTER);
TablaAreas.setAlignmentY(SwingConstants.CENTER);
TablaAreas.setFont(new Font("Arial", Font.PLAIN, 12));
TablaAreas.setAutoResizeMode(JTable.AUTO_RESIZE_OF F);
TablaAreas.setColumnSelectionAllowed(false);
TablaAreas.setShowHorizontalLines(true);
TablaAreas.setShowVerticalLines(true);
TablaAreas.getTableHeader().setResizingAllowed(fal se);
TablaAreas.getTableHeader().setReorderingAllowed(f alse);

JScrollPane scroll = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
scroll.setViewportView(TablaAreas);
scroll.setColumnHeaderView (TablaAreas.getTableHeader());
this.add(scroll, BorderLayout.CENTER);
return TablaAreas;
}
}
bueno aquí lo que veo es no debes de asignarle dos veces el modelo ya que lo estas haciendo cuando creas el objeto del JTable.
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 04:11.