//jTable1 = new JTable(dataModel);
//jScrollPane1 = new JScrollPane(jTable1);
//jScrollPane1.setPreferredSize(new Dimension(700, 300));
jTable1.setModel(dataModel);--- ZJQ
//jScrollPane1 = new JScrollPane(jTable1);
//jScrollPane1.setPreferredSize(new Dimension(700, 300));
jTable1.setModel(dataModel);--- ZJQ
import java.awt.*;
import javax.swing.table.*;
import java.util.Vector;
import java.awt.event.*;public class Untitled1 extends JFrame{
private static JScrollPane jScrollPane1 = new JScrollPane();
private static JTable jTable1 = new JTable(); void this_windowClosing(WindowEvent e) {
System.exit(0);
}
public Untitled1() {
try {
jbInit();
refresh();
}
catch(Exception e) {
e.printStackTrace();
}
} public void refresh() {
final String[] names = {"First Name", "Last Name", "Favorite Color",
"Favorite Number", "Vegetarian"};
final Object[][] data = {
{"Mark", "Andrews", "Red", new Integer(2), new Boolean(true)},
{"Georges", "Saab", "Red", new Integer(4), new Boolean(false)},
{"Willie", "Walker", "Phthalo Blue", new Integer(4), new Boolean(false)},
{"Kathy", "Walrath", "Blue", new Integer(8), new Boolean(false)},
{"Arnaud", "Weber", "Green", new Integer(44), new Boolean(false)}
};
/*
TableModel dataModel = new AbstractTableModel() { public int getColumnCount() { return names.length; }
public int getRowCount() { return data.length;}
public Object getValueAt(int row, int col) {return data[row][col];}
public String getColumnName(int column) {return names[column];}
public Class getColumnClass(int col) {return getValueAt(0,col).getClass();}
public boolean isCellEditable(int row, int col) {return (col==4);}
public void setValueAt(Object aValue, int row, int column) {
data[row][column] = aValue;
}
};
*/
// jScrollPane1 = new JScrollPane(jTable1);
MyDefaultTModel mymodel = new MyDefaultTModel(data ,names );
jTable1.setModel(mymodel ); // jScrollPane1.setPreferredSize(new Dimension(700, 300)); } public static void main(String[] args) {
Untitled1 untitled11 = new Untitled1();
untitled11.setSize(300,300);
untitled11.show(); // refresh(); } private void jbInit() throws Exception {
//this.getContentPane().setLayout(null);
// jScrollPane1.setBounds(new Rectangle(55, 43, 281, 170));
this.getContentPane().add(jScrollPane1, BorderLayout.CENTER);
jScrollPane1.getViewport().add(jTable1, null);
}
}
///////////////
import javax.swing.table.DefaultTableModel;
import java.util.Vector;
public class MyDefaultTModel extends DefaultTableModel {
public MyDefaultTModel() {
super();
}
public MyDefaultTModel(Vector data, Vector columnNames){
super(data,columnNames);
}
public MyDefaultTModel(Object[][] data, Object[] columnNames){
super(data,columnNames);
}
public Class getColumnClass(int col){
try{
Vector v = (Vector)dataVector.elementAt(col);
return v.elementAt(col).getClass();
}catch(java.lang.ArrayIndexOutOfBoundsException t){
System.out.println("reeeeeeeee");
return new String().getClass();
} }
}