Is there a way to insert always an empty row if the lowest row gets edited?
I always want to have a free row on the bottom and if someone edits the lowest row, there should be automatically inserted a new one.
I use that AbstractTableModel:
public class NativeTableModel extends AbstractTableModel {
private static final long serialVersionUID = 1L;
private ArrayList<Spieler> myObjects = null;
private String[] columnNames = { "Vorname", "Nachname", "Trikotnummer" };
public NativeTableModel() {
myObjects = new ArrayList<Spieler>(JNIResultSet.getMeineSpieler());
}
@Override
public int getRowCount() {
return myObjects.size();
}
@Override
public String getColumnName(int index) {
return columnNames[index];
}
@Override
public int getColumnCount() {
return columnNames.length;
}
@Override
public boolean isCellEditable(int row, int col) {
boolean retValue = false;
if (col >= 1) {
retValue = true;
}
return retValue;
}
@Override
public void setValueAt(Object value, int row, int col) {
switch (col) {
case 0:
if (value instanceof String) {
//
}
break;
case 1:
if (value instanceof Integer) {
//
}
break;
}
fireTableCellUpdated(row, col);
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
Object value = "";
Spieler s = this.myObjects.get(rowIndex);
switch (columnIndex) {
case 0:
value = s.getVorname();
break;
case 1:
value = s.getNachname();
break;
case 2:
value = s.getTrikotnummer();
break;
}
return value;
}
}
How can I check if the lowest row is empty or not and if it's empty insert a new row?