标签:
 JTable table = new JTable();
JTable table = new JTable();
 Object[][] cellData =
Object[][] cellData =  {
{ {"row1-col1", "row1-col2"},
{"row1-col1", "row1-col2"}, {"row2-col1", "row2-col2"}};
{"row2-col1", "row2-col2"}};
 String[] columnNames =
String[] columnNames =  {"col1", "col2"};
{"col1", "col2"}; 
     JTable table = new JTable(cellData, columnNames);
JTable table = new JTable(cellData, columnNames);
 String[] headers =
String[] headers =  { "表头一", "表头二", "表头三" };
{ "表头一", "表头二", "表头三" }; Object[][] cellData = null;
Object[][] cellData = null;

 DefaultTableModel model = new DefaultTableModel(cellData, headers)
DefaultTableModel model = new DefaultTableModel(cellData, headers)  {
{

 public boolean isCellEditable(int row, int column)
  public boolean isCellEditable(int row, int column)  {
{ return false;
    return false; }
   } };
 };
 table = new JTable(model);
table = new JTable(model); table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); TableColumn firsetColumn = table.getColumnModel().getColumn(0);
TableColumn firsetColumn = table.getColumnModel().getColumn(0); firsetColumn.setPreferredWidth(30);
firsetColumn.setPreferredWidth(30); firsetColumn.setMaxWidth(30);
firsetColumn.setMaxWidth(30); firsetColumn.setMinWidth(30);
firsetColumn.setMinWidth(30); DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
DefaultTableModel tableModel = (DefaultTableModel) table.getModel(); int count=5;
int count=5; tableModel.setColumnCount(count);
tableModel.setColumnCount(count); int cols = table.getColumnCount();
int cols = table.getColumnCount(); DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
DefaultTableModel tableModel = (DefaultTableModel) table.getModel(); tableModel.addColumn("新列名");
tableModel.addColumn("新列名"); table.removeColumn(table.getColumnModel().getColumn(columnIndex));// columnIndex是要删除的列序号
table.removeColumn(table.getColumnModel().getColumn(columnIndex));// columnIndex是要删除的列序号 table.setRowHeight(20);
table.setRowHeight(20); DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
DefaultTableModel tableModel = (DefaultTableModel) table.getModel(); int n=5;
int n=5; tableModel.setRowCount(n);
tableModel.setRowCount(n); int rows = table.getRowCount();
int rows = table.getRowCount();
 DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
 tableModel.addRow(new Object[]
tableModel.addRow(new Object[] {"sitinspring", "35", "Boss"});
{"sitinspring", "35", "Boss"}); DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
DefaultTableModel tableModel = (DefaultTableModel) table.getModel(); model.removeRow(rowIndex);// rowIndex是要删除的行序号
model.removeRow(rowIndex);// rowIndex是要删除的行序号 DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
DefaultTableModel tableModel = (DefaultTableModel) table.getModel(); String cellValue=(String) tableModel.getValueAt(row, column);// 取单元格数据,row是行号,column是列号
String cellValue=(String) tableModel.getValueAt(row, column);// 取单元格数据,row是行号,column是列号
 public class Member
public class Member {
{ // 名称
    // 名称 private String name;
    private String name; 
     // 年龄
    // 年龄 private String age;
    private String age; 
     // 职务
    // 职务 private String title;
    private String title; }
 }
 public void fillTable(List<Member> members)
public void fillTable(List<Member> members) {
{ DefaultTableModel tableModel = (DefaultTableModel) table
  DefaultTableModel tableModel = (DefaultTableModel) table .getModel();
  .getModel(); tableModel.setRowCount(0);// 清除原有行
  tableModel.setRowCount(0);// 清除原有行 
   // 填充数据
  // 填充数据
 for(Member member:members)
  for(Member member:members) {
{ String[] arr=new String[3];
    String[] arr=new String[3]; arr[0]=member.getName();
    arr[0]=member.getName(); arr[1]=member.getAge();
    arr[1]=member.getAge(); arr[2]=member.getTitle();
    arr[2]=member.getTitle(); 
     // 添加数据到表格
    // 添加数据到表格 tableModel.addRow(arr);
    tableModel.addRow(arr); }
   } 
   // 更新表格
  // 更新表格 table.invalidate();
  table.invalidate(); }
 }
 public List<Member> getShowMembers()
public List<Member> getShowMembers() {
{ List<Member> members=new ArrayList<Member>();
  List<Member> members=new ArrayList<Member>(); 
   DefaultTableModel tableModel = (DefaultTableModel) table
  DefaultTableModel tableModel = (DefaultTableModel) table .getModel();
  .getModel(); 
   int rowCount=tableModel.getRowCount();
  int rowCount=tableModel.getRowCount(); 
  
 for(int i=0;i<rowCount;i++)
  for(int i=0;i<rowCount;i++) {
{ Member member=new Member();
    Member member=new Member(); 
     member.setName((String)tableModel.getValueAt(i, 0));// 取得第i行第一列的数据
    member.setName((String)tableModel.getValueAt(i, 0));// 取得第i行第一列的数据 member.setAge((String)tableModel.getValueAt(i, 1));// 取得第i行第二列的数据
    member.setAge((String)tableModel.getValueAt(i, 1));// 取得第i行第二列的数据 member.setTitle((String)tableModel.getValueAt(i, 2));// 取得第i行第三列的数据
    member.setTitle((String)tableModel.getValueAt(i, 2));// 取得第i行第三列的数据 
     members.add(member);
    members.add(member); }
   } 
   return members;
  return members; }
 } int selectRows=table.getSelectedRows().length;// 取得用户所选行的行数
int selectRows=table.getSelectedRows().length;// 取得用户所选行的行数 DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
DefaultTableModel tableModel = (DefaultTableModel) table.getModel();

 if(selectRows==1)
if(selectRows==1) {
{ int selectedRowIndex = table.getSelectedRow(); // 取得用户所选单行
  int selectedRowIndex = table.getSelectedRow(); // 取得用户所选单行   
   
   .// 进行相关处理
.// 进行相关处理 }
} int selectRows=table.getSelectedRows().length;// 取得用户所选行的行数
int selectRows=table.getSelectedRows().length;// 取得用户所选行的行数 DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
DefaultTableModel tableModel = (DefaultTableModel) table.getModel();
 if(selectRows>1)
if(selectRows>1) int[] selRowIndexs=table.getSelectedRows();// 用户所选行的序列
  int[] selRowIndexs=table.getSelectedRows();// 用户所选行的序列 
  
 for(int i=0;i<selRowIndexs.length;i++)
  for(int i=0;i<selRowIndexs.length;i++) {
{ // 用tableModel.getValueAt(row, column)取单元格数据
    // 用tableModel.getValueAt(row, column)取单元格数据 String cellValue=(String) tableModel.getValueAt(i, 1);
    String cellValue=(String) tableModel.getValueAt(i, 1); }
   } }
}
 view.getTable().addMouseListener(new MouseListener()
view.getTable().addMouseListener(new MouseListener()  {
{
 public void mousePressed(MouseEvent e)
  public void mousePressed(MouseEvent e)  {
{ // 鼠标按下时的处理
    // 鼠标按下时的处理 }
  }

 public void mouseReleased(MouseEvent e)
  public void mouseReleased(MouseEvent e)  {
{ // 鼠标松开时的处理
    // 鼠标松开时的处理 }
  }

 public void mouseEntered(MouseEvent e)
  public void mouseEntered(MouseEvent e)  {
{ // 鼠标进入表格时的处理
    // 鼠标进入表格时的处理 }
  }

 public void mouseExited(MouseEvent e)
  public void mouseExited(MouseEvent e)  {
{ // 鼠标退出表格时的处理
    // 鼠标退出表格时的处理 }
  }

 public void mouseClicked(MouseEvent e)
  public void mouseClicked(MouseEvent e)  {
{ // 鼠标点击时的处理
    // 鼠标点击时的处理 }
  } });
 });private JTable getJTable0() {
  if (jTable0 == null) {
   jTable0 = new JTable();
   
   jTable0.setModel(new DefaultTableModel(new Object[][] { {false,  "null", "null", "com1", "null", "null", "null", "null", "null", "null", },
     {false, "null", "null", "com2", "null", "null", "null", "null", "null", "null",  },
     {  false, "null", "null", "com3", "null", "null", "null", "null", "null", "null",},
     { false,"null", "null", "com4", "null", "null", "null", "null", "null", "null",  },
     {  false,"null", "null", "com5", "null", "null", "null", "null", "null", "null", },
     {  false, "null", "null", "com6", "null", "null", "null", "null", "null", "null",},
     { false, "null", "null", "com7", "null", "null", "null", "null", "null", "null", },
     {false, "null", "null", "com8", "null", "null", "null", "null", "null", "null",  },
     { false,"null", "null", "com9", "null", "null", "null", "null", "null", "null", },
     { false,"null", "null", "com10", "null", "null", "null", "null", "null", "null",  },
     {false,  "null", "null", "com11", "null", "null", "null", "null", "null", "null", },
     { false, "null", "null", "com12", "null", "null", "null", "null", "null", "null", }, }, new String[] {"操作",  "ID", "status", "序号", "产品序列号", "半成品序列号",
     "所属工作任务号", "产品型号(pn码)", "生产进度状态", "端口状态", }) {
    private static final long serialVersionUID = 1L;
    Class<?>[] types = new Class<?>[] { Boolean.class, Object.class, Object.class, Object.class, Object.class, Object.class, Object.class, Object.class, Object.class,
      Object.class, };
 
    public Class<?> getColumnClass(int columnIndex) {
     return types[columnIndex];
    }
    
//    //使table不可编辑的代码(放在model中有效)全部不可编辑
//    public boolean isCellEditable(int row, int column) 
//             { 
//                 return false; 
//             } 
    //指定列不可编辑
    boolean[] editables = {true, false, false,false,false,false,false,false,false,false};
       public boolean isCellEditable(int row, int col)
       {
          return editables[col];
       }
//指定行不可编辑
    boolean[] editables = {true, false, false,false,false,false,false,false};
       public boolean isCellEditable(int row, int col)
       {
          return editables[row];
       }
   });
  }
  return jTable0;
 }
标签:
原文地址:http://www.cnblogs.com/hthuang/p/4378467.html