📄 commontable.java
字号:
package librarymanagement.view.common;
import java.awt.Dimension;
import java.sql.ResultSet;
import java.util.Iterator;
import java.util.Vector;
import javax.swing.DefaultCellEditor;
import javax.swing.JComboBox;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
import librarymanagement.vo.BorrowBookVo;
/**
* 构建公共的表
* @author 虎兴龙
*
*/
public class CommonTable extends JTable{
/**
*
* @param tableHead String 型数组,表的字段
* @param data Object 型二维数组,表的数据
*/
public CommonTable(String[] tableHead,Object[][] data){
super();
DefaultTableModel model = new DefaultTableModel(data, tableHead){
public boolean isCellEditable(int rowIndex, int columnIndex) {
return false;
}
};
this.setModel(model);
/* TableColumnModel comModel = table.getColumnModel();
TableColumn column = comModel.getColumn(0);
column.setPreferredWidth(150);*/
this.getTableHeader().setReorderingAllowed(false);
}
/**
*
* @param tableData 表数据
* @param tableHead 表字段
* @param c 需要设置JComboBox 的列 0<=c
* @param items 某一列的JComboBox中的值,String[] 类型
*/
public CommonTable( Object[][] tableData,String[] tableHead,int c,String[] items){
DefaultTableModel tableModel = new DefaultTableModel(tableData,tableHead);
JTable table = new JTable(tableModel);
TableColumn column = null;
TableColumnModel columnModel = table.getColumnModel();
/* for(int i = 0; i < 5; i++){
column = columnModel.getColumn(i);
if(i %2 == 0){
column.setPreferredWidth(130);
}else{
column.setPreferredWidth(70);
}
}*/
JComboBox box = new JComboBox();
for(int i =0;i<items.length;i++){
box.addItem(items[i]);
}
table.getColumnModel().getColumn(0).setCellEditor(new DefaultCellEditor(box));
}
/**
* 设置表字段的宽度
* @param col 第几列
* @param size 宽度
*/
public void setColumnSize(int col,int size){
TableColumnModel comModel = this.getColumnModel();
TableColumn column = comModel.getColumn(col);
column.setPreferredWidth(size);
}
/**
* 将表中的行清空
* @param table 需要清空 的表
*/
public void reMoveRow(JTable table){
DefaultTableModel model = (DefaultTableModel) table.getModel();
int rows = model.getRowCount();
for (int i = rows - 1; i >= 0; i--) {
model.removeRow(i);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -