JTable的模型

2018-11-04 23:15:21开始写


模型类

 1 import javax.swing.table.DefaultTableModel;//导入包
 2 
 3 public class LocalTableModel extends DefaultTableModel {//继承
 4     Class[] types = new Class[] {java.lang.String.class, java.lang.String.class};// 表头的类类型
 5     boolean[] canEdit = new boolean[] {false, false};// 表头不可编辑
 6     public LocalTableModel() {//无参构造函数 表格模型中的表头
 7         super(new Object[][] {}, new String[] {"用户ID", "用户头像"});//第一个参数是表数据,第二个参数是一维数组,元素的表头
 8     }
 9     public Class getColumnClass(int columnIndex) {// 获得表头的类类型
10         return types[columnIndex];//返回java.lang.String.class
11     }
12     public boolean isCellEditable(int rowIndex, int columnIndex) {// 表头是否可编辑
13         return canEdit[columnIndex];//返回false
14     }
15 }

模型使用

 1 JTable table;// 表格模型
 2         ProductTableModel productModel = new ProductTableModel();// 商品信息表模板
 3         table = new JTable(productModel);//实例化JTable对象,参数是表格模板
 4         scrollPane.setViewportView(table);//添加到滚动面板中显示JTable
 5         productModel.setRowCount(0);//清除表格模型中的原有行
 6         JDBCUtil util = new JDBCUtil();//创建Java数据库连接工具包类对象
 7         List<Product> list = util.getProductInfo();//用来存储信息的集合
 8         for (int i = 0; i < list.size(); i++) {//遍历一遍list(挨个访问一次)
 9             Product product = (Product) list.get(i);//通过列表的get方法获得第i个JavaBean对象
10             
11             //model是JTable的模型,调用addRow方法,参数是一维数组,数组元素是JavaBean中的变量也是数据表中的字段值,
12             //且是通过JavaBean的get方法获得,最后添加到JTable中
13             productModel.addRow(new Object[] { product.getId(), product.getListID(), product.getProductID(), product.getSocket() });
14         }

选择事件

 1 int row = table.getSelectedRow();//选择某一行

2 userID = (String) table.getValueAt(row, 0);//获得某一行的第一个值 


谢谢、Thank you、Salamat Do(撒拉玛特朵)、あリがCám o*n(嘉蒙)とゥ(阿里嘎都)、감사합니다 (勘三哈咪瘩)、terima Kasih(得力马卡系)、kob-khun(寇布库恩)、dhanyavaad(达尼阿瓦德)、toda(透达)、te?ekkür ederim(特谢库尔埃戴里姆)、Dzie,kuje(以库以而)、Spasibo(思巴喜柏)、Danke(但可)、shokran(休克朗)、Obrigada(欧布哩嘎搭)、dank u(当Q)、Merci(梅呵西)、Gracias(格拉喜亚思)、Grazie(格啦姬)、Благодарности、Tak、Kiitos、Díky、Hvala、Mul?umesc、Takk、Ευχαριστ

猜你喜欢

转载自www.cnblogs.com/YUJIE666/p/9906644.html