Any reason to not use a JTable? http://download.oracle.com/javase/tutorial/uiswing/components/table.html