Muchas veces hemos buscado como poder agregar una fila a un Objeto del tipo JTable, y pues en la api de la clase JTable no existe un metodo addFila o addRow, ademas el hecho que estemos programando por ejemplo en Netbeans como es mi caso, alguno pueden decir que nos puede dificultar las cosas ya que Netbeans genera el codigo de creacion de componentes, por eso quise mostrar esta manera de agregar y remover filas.
Simplemente 2 botones, uno para agregar y otro para eliminar la ultima fila, veamos.
private void jButtonAgregarActionPerformed(java.awt.event.ActionEvent evt)
{
DefaultTableModel temp = (DefaultTableModel) jTableProcesos.getModel();
Object nuevo[]= {temp.getRowCount()+1,"",""};
temp.addRow(nuevo);
}
{
DefaultTableModel temp = (DefaultTableModel) jTableProcesos.getModel();
Object nuevo[]= {temp.getRowCount()+1,"",""};
temp.addRow(nuevo);
}
Lo que se hace es obtenet un Objeto del tipo DefaultTableModel , el cual si nos permite agregar filas, tomando a traves del Metodo «getModel()» de la tabla «jTableProcesos, y despues haciendo una «transformacion de tipo cast» al tipo DefaultTableModel. Despues ya podemos agregar la fila y se actualizará, automáticamente.
Para eliminar la última fila
private void jButtonEliminarActionPerformed(java.awt.event.ActionEvent evt)
{
try
{
DefaultTableModel temp = (DefaultTableModel) jTableProcesos.getModel();
temp.removeRow(temp.getRowCount()-1);
}
catch(ArrayIndexOutOfBoundsException e){;}
}
{
try
{
DefaultTableModel temp = (DefaultTableModel) jTableProcesos.getModel();
temp.removeRow(temp.getRowCount()-1);
}
catch(ArrayIndexOutOfBoundsException e){;}
}
La misma manera de obtener el objeto DefaultTableModel, y para eliminar solo recurrimos al metodo «removeRow()» de esa clase.
Espero que esta manera sencilla sea de utilidad, pues he tratado de tocar nada mas del codigo del Netbeans, saludos.
Adjunto:
— JAR ejecutable de la demostracion:JAr ejecutable
-Codigo Fuente del Demo: Source
hola man he probado ese metodo pero no pasa nada man
Hola, la verdad no conozco el nivel de tu acercamiento en java, asi que puntualizare, que el metodo para agregar o eliminar se hace basicamente en:
DefaultTableModel temp = (DefaultTableModel) jTableProcesos.getModel();
Al parecer el motivo por el cual no te ha funcionado es por las «comillas», las cuales las cambia wordpress, ya lo corregi, igualmente añadire a la entrada el codigo fuente del ejemplo
asi podras verlo mejor. saludos.
hola,los enlaces están rotos
Excelente solucion!!!!
bien elimina pero si kiero guadar otra ves se genera lo guardado
si kiero guardar se vuelbe a generar lo k se elimino……
Excelente ayuda, muchas gracias amigo …
gracias viejo por la solucion es algo bien simple facil de comprender
Funciona Perfecto!
muy buen codigo, ya lo desarrolle y me fue excelente
NO SE PORQUE NO CORRE EN VISUAL STUDIO .NET
Perfecto muchisimas gracias, claro y directo al punto, gracias
gracias!!! me sirvio para entender q getRowCount entre la cantidad de filas… muy distinto a la pocicion de la fila
por eso no funcionaba el
modeloTabla.removeRow(miTabla.getRowCount()); pues eliminaba la fila de pocision:ultima +1; la cual no existe!!!
men muchas grax por tu aporte esta muy bueno solo tengo una duda como ago para que cuando yo agrege una fila mas no salga con un numero ???
osea ej: cuando se ba agregar la fila numero 6 como ago para que no salga el numero 6 ??
asi esta —> Object nuevo[]= {temp.getRowCount()+1,»»,»»};
ahora solo quitale «temp.getRowCount()+1»
queda Object nuevo[]= {valorColumna1,valorColumna2,valorColumna3,valorColumnaN};
listo.
Muchas gracias, era lo que estaba buscando y no pense que fuera tan sencillo … bien!!! me funciono a la perfeccion.
Hermano me sirvio de mucho!!! el ejemplo para una aplicacion que estoy desarrollando!!!
buena aporte amigo, mi pregunta es ….como hago para eliminar multiples filas selecionadas, de dejo explicar , selecciono muchas filas alternas y quiero q se eliminen de golpe en evento. pieso q debo de aser un FOR y recorrer las filas, ayuda porfa
d mucha ayuda…gracias hermano sigue adelante
Okei gracias!!!
cual es el metodo para eliminar columnas?, ya agregue las columnas pero aun no se como eliminarlas
Excelente aportación Felicitaciones
Muchas Gracias !
Excelente solución, Funciono perfecto!
Wow mil gracias!! es tarde y era lo único que me faltaba para entregar mi proyecto mañana, no sabes lo mucho que me ayudaste!!
hola.. muy buen aporte, ahora mi duda es como poder dejar estática la fila agregada, ya que al ejecutar nuevamente el Jtable regresa a la cantidad de filas establecidas al momento de crearlo..
también quisiera saber de que forma puedo dejar libre el numero de filas del Jtable ya que al parecer tiene un limite de 100 celdas..
quiero el código y los enlaces no sirven, por favor dejar el código
gracias man este codigo me salvo hevre amigo
los linkns no funcionan subelos de Nuevo mil gracias
amigo una pregunta como hago para pasarle una consulta, osea que sobre los valores de las filas salga las columnas de la consulta, si puedes orientarme .. gracias de antemano funciono perfecto