1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
|
import java.util.List;
import javax.swing.table.AbstractTableModel;
import net.codejava.model.Employee;
public class EmployeeTableModel extends AbstractTableModel
{
private final List<Employee> employeeList;
private final String[] columnNames = new String[] {
"Id", "Name", "Number"
};
private final Class[] columnClass = new Class[] {
Integer.class, String.class, Integer.class
};
public EmployeeTableModel(List<Employee> employeeList)
{
this.employeeList = employeeList;
}
@Override
public String getColumnName(int column)
{
return columnNames[column];
}
@Override
public Class<?> getColumnClass(int columnIndex)
{
return columnClass[columnIndex];
}
@Override
public int getColumnCount()
{
return columnNames.length;
}
@Override
public int getRowCount()
{
return employeeList.size();
}
@Override
public Object getValueAt(int rowIndex, int columnIndex)
{
Employee row = employeeList.get(rowIndex);
if(0 == columnIndex) {
return row.getId();
}
else if(1 == columnIndex) {
return row.getName();
}
else if(2 == columnIndex) {
return row.getNumber();
}
return null;
} @Override
public boolean isCellEditable(int rowIndex, int columnIndex)
{
return true;
}
@Override
public void setValueAt(Object aValue, int rowIndex, int columnIndex)
{
Employee row = employeeList.get(rowIndex);
if(0 == columnIndex) {
row.setId((Integer) aValue);
}
else if(1 == columnIndex) {
row.setName((String) aValue);
}
else if(2 == columnIndex) {
row.setNumber((Integer) aValue);
}
}
} |
Partager