I try for almost 2 hours to figure out how to remove and update 1 row from a JTable but somehow it wont work. I use the following code:
DefaultTableModel modelTable = (DefaultTableModel) jTabelRooster.getModel();
modelTable.addRow(new Object[]{lid.getLidnummer().toString(), lid.getLidvoornaam(), lid.getLidtussenvoegsel(),lid.getLidachternaam(), lid.getAanwezig()});
Ok so far so good.. rows are nicely added.. but now i would like to remove them:
int SelectedRow = jTabelRooster.getSelectedRow();
modelTable.removeRow(SelectedRow);
When i do this i get the following error: Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 2 >= 2
Your help would be appreciated
EDIT: the jTabelRooster has been inserterd by the gui layout manager So i have this code now, and i dont get much succes:
private void initRoosterDetail()
{
for(int i = 0; i < leden.size(); i++)
{
lid = leden.get(i);
modelTable.addRow(new Object[]{lid.getLidnummer().toString(), lid.getLidvoornaam(), lid.getLidtussenvoegsel(),lid.getLidachternaam(), lid.getAanwezig()});
}
}
private void jbInschrijvingVerwijderenActionPerformed(java.awt.event.ActionEvent evt) {
int SelectedRow = jTabelRooster.getSelectedRow();
modelTable.removeRow(jTabelRooster.convertRowIndexToModel(SelectedRow));
}
this must be it :)
When i select 1 row in the table and press the cancelbutton.. i receive this message:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 2 >= 2
========================================================================================================================================================================================================================================================================================================================================
Thanx all for the help... i know what i did wrong... it had to do with a tableModelListener i used.. so this left me with another problem :)
jTabelRooster.getModel().addTableModelListener(
new TableModelListener()
{
public void tableChanged(TableModelEvent evt)
{
if(jTabelRooster.getSelectedColumn() == 4)
{
}
}
});
This code was messing the deleterow command.
I have 1 boolean column with checkboxes in it :(