Я пытаюсь добавить строку в Jtable
, которая расширяет AbstractTableModel
, как показано в следующем коде:
class AbstractTable extends AbstractTableModel
{
String[] columNames = {"name", "cc", "age", "phone", "date", "amoun"};
Object[][] dataRow = {{"harry", "1234","21","23594","13/3/2","3000"} };
@Override
public int getColumnCount()
{
return columNames.length;
}
@Override
public int getRowCount()
{
return dataRow.length;
}
public String getColumnName(int col)
{
return columNames[col];//cast from object to string.
}
@Override
public Object getValueAt(int row, int col)
{
return dataRow[row][col];
}
public void setValueAt(Object value, int row, int col)
{
dataRow[row][col] = value;
fireTableCellUpdated(row, col);
}
}
Здесь я реализую кнопку, которая пытается добавить строку в модель Jtable
после нажатия, но она не работает и генерирует исключение:
java.lang.ClassCastException: AbstractTable нельзя преобразовать в javax.swing.table.DefaultTableModel
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand().equals("add client"))
{
Object[] dataList = {"", "", "", "", "", ""};
AbstractTableModel defaut = (AbstractTableModel) table.getModel();
((DefaultTableModel) defaut).addRow(dataList);
labelStatus.setText("Cliente Agregado.");
}
Как я могу правильно добавить строку в этот код?