資源描述:
《JTable 使用細講》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、JTable使用細講JTable是Swing編程中很常用的控件,這里總結了一些常用方法以備查閱.一.創(chuàng)建表格控件的各種方式:1)調用無參構造函數.JTabletable=newJTable();2)以表頭和表數據創(chuàng)建表格.Object[][]cellData={{"row1-col1","row1-col2"},{"row2-col1","row2-col2"}};String[]columnNames={"col1","col2"};????JTabletable=newJTable(cellData,columnNames);3)以表頭和表數據創(chuàng)建表格,并且讓表單元格不可改.St
2、ring[]headers={"表頭一","表頭二","表頭三"};Object[][]cellData=null;DefaultTableModelmodel=newDefaultTableModel(cellData,headers){publicbooleanisCellEditable(introw,intcolumn){???returnfalse;}};table=newJTable(model);二.對表格列的控制1)設置列不可隨容器組件大小變化自動調整寬度.table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);2)限制某列的寬
3、度.TableColumnfirsetColumn=table.getColumnModel().getColumn(0);firsetColumn.setPreferredWidth(30);firsetColumn.setMaxWidth(30);firsetColumn.setMinWidth(30);3)設置當前列數.DefaultTableModeltableModel=(DefaultTableModel)table.getModel();intcount=5;tableModel.setColumnCount(count);4)取得表格列數intcols=table.g
4、etColumnCount();5)添加列DefaultTableModeltableModel=(DefaultTableModel)table.getModel();tableModel.addColumn("新列名");6)刪除列table.removeColumn(table.getColumnModel().getColumn(columnIndex));//columnIndex是要刪除的列序號三.對表格行的控制1)設置行高table.setRowHeight(20);2)設置當前航數DefaultTableModeltableModel=(DefaultTableMod
5、el)table.getModel();intn=5;tableModel.setRowCount(n);3)取得表格行數introws=table.getRowCount();4)添加表格行DefaultTableModeltableModel=(DefaultTableModel)table.getModel();tableModel.addRow(newObject[]{"sitinspring","35","Boss"});5)刪除表格行DefaultTableModeltableModel=(DefaultTableModel)table.getModel();model.
6、removeRow(rowIndex);//rowIndex是要刪除的行序號四.存取表格單元格的數據1)取單元格數據DefaultTableModeltableModel=(DefaultTableModel)table.getModel();StringcellValue=(String)tableModel.getValueAt(row,column);//取單元格數據,row是行號,column是列號2)填充數據到表格.注:數據是Member類型的鏈表,Member類如下:publicclassMember{???//名稱???privateStringname;???????
7、//年齡???privateStringage;???????//職務???privateStringtitle;}填充數據的代碼:publicvoidfillTable(Listmembers){DefaultTableModeltableModel=(DefaultTableModel)table.getModel();tableModel.setRowCount(0);//清除原有行//填充數據for(Membermember:mem