Swing を読み込んで、TableModel を設定して、TableCellEditor クラスを使うなど使いこなすと応用が利きます。
ここで、気づいた点をひとつ。
入力済みの数値はそのまま Integer ですが、編集を可能にして入力を得ると、値は String になります。
下記のようにすると判別できます。
Object obj=table.getValueAt(i,0);
String className=obj.getClass().getName();
if(className.equals("java.lang.String"))
{
String str=(String)obj;
events.events.get(i).from=Integer.parseInt(str);
}
else if(className.equals("java.lang.Integer"))
{
Integer intValue=(Integer)obj;
events.events.get(i).from=(int)intValue;
}