¿Cómo puedo borrar el contenido de la JTable utilizando Java ..cómo borrar JTable
Respuesta
Básicamente, depende de la TableModel que está utilizando para su JTable. Si está utilizando el DefaultTableModel
a continuación, puede hacerlo de dos maneras:
DefaultTableModel dm = (DefaultTableModel)table.getModel();
dm.getDataVector().removeAllElements();
dm.fireTableDataChanged(); // notifies the JTable that the model has changed
o
DefaultTableModel dm = (DefaultTableModel)table.getModel();
while(dm.getRowCount() > 0)
{
dm.removeRow(0);
}
consulte el Javadoc de DefaultTableModel para más detalles
Recuerde disparar un evento de tabla si cambia el vector de datos subyacente; de lo contrario, la JTable no tendrá ni idea de que ha cambiado ... – dacwe
-1, ambas sugerencias son incorrectas. El primero, por el motivo comentado anteriormente. El segundo saltará filas porque la variable i sigue incrementándose a medida que elimina cada fila. Si desea crear un bucle, simplemente siga eliminando la fila 0, hasta que no haya más filas. Sin embargo, Carlos publicó la solución más simple. – camickr
Camickr, tienes razón. Cambié mi respuesta para solucionar estos problemas. Aún la solución de Carlos es más fácil de implementar. –
Depende del modelo que está utilizando para su JTable.
Debe eliminar los datos del TableModel
utilizados para la tabla.
Si usa DefaultTableModel
, simplemente configure el recuento de filas en cero. Esto eliminará las filas y activará el TableModelEvent
para actualizar la GUI.
JTable table; … DefaultTableModel model = (DefaultTableModel) table.getModel(); model.setRowCount(0);
Si está utilizando otra TableModel
, por favor, compruebe la documentación.
Solo añadiendo esto aquí ... Tuve que llamar a 'table.revalidate();' después de configurar el recuento de filas a cero para ver el cambio inmediatamente; de lo contrario, no vi el cambio hasta que hice clic en 'JTable '. – Sakiboy
@ Jim-Dingo funciona bien sin 'revalidate()' para mí: [ejemplo simple] (http://pastebin.com/iDgLeKPk) El 'DefaultTableModel' informa a la vista cuando se cambiaron los datos - verifique el código de' setNumRows (int) ', llama a' fireTableRowsDeleted' si se reduce el recuento de filas. –
Tenía que conseguir una mesa limpia sin columnas. He hecho lo siguiente:
jMyTable.setModel(new DefaultTableModel());
solución rápida y efectiva, pero también elimina el encabezado. Debería ser mejor si hay una opción para no eliminar el encabezado. Alguien en otra publicación sugirió eliminar todas las filas una por una. Eso mantendría el encabezado –
Esta es la forma más rápida y fácil que he encontrado;
while (tableModel.getRowCount()>0)
{
tableModel.removeRow(0);
}
Esto despeja la mesa y la deja lista para nuevos datos.
Creo que quisiste decir que quieres borrar todas las celdas de la jTable y hacer que sea como una nueva jTable en blanco. Por ejemplo, si su tabla es myTable, puede hacer lo siguiente.
DefaultTableModel model = new DefaultTableModel();
myTable.setModel(model);
Si usamos tMOdel.setRowCount(0);
podemos obtener la tabla vacía.
DefaultTableModel tMOdel = (DefaultTableModel) jtableName.getModel();
tMOdel.setRowCount(0);
Por favor edite con más información. Se desalientan las respuestas de solo código y "prueba esto", ya que no contienen contenido que se pueda buscar y no explican por qué alguien debe "probar esto". Hacemos un esfuerzo aquí para ser un recurso para el conocimiento. – abarisone
((DefaultTableModel)jTable3.getModel()).setNumRows(0); // delet all table row
intenta esto:
- 1. ¿Cómo borrar los contenidos de una jTable?
- 2. Seleccionar múltiples filas de JTable
- 3. cómo usar hashMap con JTable
- 4. JTable sin encabezado
- 5. JAVA - Validación en JTable
- 6. JTable cell rendering
- 7. JTable Input Verifier
- 8. ¿Cómo borrar Viewstate?
- 9. Cómo borrar: ambos; ¿correctamente?
- 10. ¿Cómo borrar MemoryCache?
- 11. ¿Cómo borrar una cadena?
- 12. ¿Cómo borrar ImageView correctamente?
- 13. Cómo borrar una matriz
- 14. ¿Cómo borrar un diccionario?
- 15. Cómo borrar ostringstream
- 16. Cómo borrar un UIWebView
- 17. cómo borrar el montón?
- 18. JTable con JPopupMenu
- 19. ¿Cómo eliminar todas las columnas de JTable?
- 20. ¿Cómo eliminar una fila de JTable?
- 21. ¿Cómo agregar una fila en JTable?
- 22. ¿Cómo obtener datos de una JTable?
- 23. Cómo mantener JTable en la celda editada
- 24. Cómo ocultar líneas de cuadrícula en JTable
- 25. ¿Cómo se establece el encabezado para JTable?
- 26. cómo copiar contenido de jtable al portapapeles
- 27. Cómo enlazar booleanos en JTable con JGoodies
- 28. JTable cómo cambiar color de fondo
- 29. ¿Cómo cambiar la altura del encabezado JTable?
- 30. Fusionar celdas en JTable
Comprobar esta pregunta: http://stackoverflow.com/questions/4439210/deleting-datas-in-the-table-in-gui/4439297#4439297 –
Dupe de: http://stackoverflow.com/questions/3879610/clear-contents-of-a-jtable –