参照下面的代码。
[code="java"]
import java.awt.BorderLayout;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class MyTableModel extends DefaultTableModel{
public MyTableModel(Vector data, Vector columnNames) {
super(data, columnNames);
}
public boolean isCellEditable(int row, int column) {
return false;
}
public static void main(String[] args) {
Vector<String> row1 = new Vector<String>();
row1.add("123");
row1.add("456");
row1.add("789");
Vector<String> row2 = new Vector<String>();
row2.add("123");
row2.add("456");
row2.add("789");
Vector<Vector> data = new Vector<Vector>();
data.add(row1);
data.add(row2);
Vector<String> columnNames = new Vector<String>();
columnNames.add("C1");
columnNames.add("C2");
columnNames.add("C3");
MyTableModel model = new MyTableModel(data, columnNames);
JTable table = new JTable(model);
JScrollPane scrollPane = new JScrollPane();
scrollPane.setViewportView(table);
JFrame frame = new JFrame("MyTableModel");
frame.setLayout(new BorderLayout());
frame.add(scrollPane, BorderLayout.CENTER);
frame.setSize(300, 300);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
[/code]