Я хотел бы создать JTable, который может динамически добавлять строки к себе, изначально в таблице не должно быть данных. Я сделал это, создав класс TableModel, расширяющий AbstractTableModel, код прилагается.
class MyTableModel extends AbstractTableModel{
private static int initialRowCount = 3;
private ArrayList<ArrayList<Object>> data;
private static String[] columnName = {"Date Tested","Product","VI Test Result","Lot ID","MCN","SLT TIS","Tester","In","First Pass","FP%","RT1 Pass","RT2 Pass","Final Pass",
"SLT Final Yield %","SLT Fail Quantity","Remark"};
int i=0;
public MyTableModel(){
data = new ArrayList<ArrayList<Object>>(20);
}
public int getColumnCount() {
System.out.println(i++);
return columnName.length;
}
public int getRowCount() {
return initialRowCount;
}
public Object getValueAt(int r, int c) {
}
public String getColumnName(int c) {
return columnName[c];
}
public boolean isCellEditable(int row, int column) {
if(column==0)
return false;
else
return true;
}
public void setValueAt(Object vaule,int row,int column){
data.add();
}
public void addRow(){
initialRowCount++;
}
}
Мой вопрос: должен ли я использовать 2-D ArrayList в качестве контейнера данных? Если да, то как мне реализовать это в этом коде? Я новичок в Java и только начинаю изучать Swing, любая помощь приветствуется.
DefaultTableModel
внутри используетVector
внутриVector
. Если вы не знаете фактический тип данных для строки (т. е. это не стандартный POJO), я бы предложил использовать что-то подобное. На самом деле, просто используйте вместо этогоDefaultTableModel
... - person MadProgrammer   schedule 07.05.2014List
изList
для простоты - person MadProgrammer   schedule 07.05.2014