import java.awt.BorderLayout;
import java.awt.MenuBar;
import java.io.File;
import java.util.Date;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
public class TableFeature extends JFrame {
String titles[] = new String[] { "DATUM", "NAME", "BEMERKUNG", "I_OBER", "I_OBER_AKTIV",
"I_UNTER", "I_UNTER_AKTIV", "U_OBER", "U_OBER_AKTIV", "U_UNTER", "U_UNTER_AKTIV",
"P_OBER", "P_OBER_AKTIV", "P_UNTER", "P_UNTER_AKTIV", "FL_I_OBER", "FL_I_OBER_AKTIV",
"FL_I_UNTER", "FL_I_UNTER_AKTIV", "FL_P_OBER", "FL_P_OBER_AKTIV", "FL_P_UNTER",
"FL_P_UNTER_AKTIV", "X_OBER", "X_OBER_AKTIV", "X_UNTER", "X_UNTER_AKTIV", "Y_OBER",
"Y_OBER_AKTIV", "Y_UNTER", "Y_UNTER_AKTIV", "T_OBER", "T_OBER_AKTIV", "T_UNTER",
"T_UNTER_AKTIV", "PHI_OBER", "PHI_OBER_AKTIV", "PHI_UNTER", "PHI_UNTER_AKTIV",
"T_JP_OBER", "T_JP_OBER_AKTIV", "T_JP_UNTER", "T_JP_UNTER_AKTIV"};
public TableFeature() {
super("Simple JTable Test");
setSize(1277, 1000);
setDefaultCloseOperation(EXIT_ON_CLOSE);
File pwd = new File(".");
Object[][] stats = getFileStats(pwd);
JTable jt = new JTable(stats, titles);
jt.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
jt.setColumnSelectionAllowed(true);
JScrollPane jsp = new JScrollPane(jt);
getContentPane().add(jsp, BorderLayout.CENTER);
jt.getTableHeader().setReorderingAllowed(false) ;//Spalten werden nicht verschiebbar
}
// lisst das lokale #Directory und gibt es in results zurück
public Object[][] getFileStats(File dir) {
String files[] = dir.list();
Object[][] results = new Object[files.length][titles.length];
for (int i = 0; i < files.length; i++) {
File tmp = new File(files[i]);
results[i][0] = new Boolean(tmp.isDirectory());
results[i][1] = tmp.getName();
results[i][2] = new Boolean(tmp.canRead());
results[i][3] = new Boolean(tmp.canWrite());
results[i][4] = new Long(tmp.length());
results[i][5] = new Date(tmp.lastModified());
results[i][6] = tmp.getName();
results[i][7]= "7";
}
return results;
}
public static void main(String args[]) {
TableFeature tf = new TableFeature();
tf.setVisible(true);
}
}