Java 自定义的JTable
来源:互联网 发布:淘宝宝贝详情图片宽度 编辑:程序博客网 时间:2024/06/15 21:20
由于普通的JTable只接收二维数组的信息。但是集合类的很难转化为二维数组,这时候我们可以自定义一个AbstractTableModel 从而实现集合信息呈现在JTable上面。
处理方法代码:
public CusTableModel(List<FareMessage>list){ this.list=list; } //行数,及数据集合的大小 @Override public int getRowCount() { // TODO Auto-generated method stub return list.size(); } //列数,固定值,即字段 @Override public int getColumnCount() { // TODO Auto-generated method stub return 5; } //给定行号列号,返回一个元素,我们以list的下标为行号,列号对应FareMessage的不同的字段 @Override public Object getValueAt(int rowIndex, int columnIndex) { // TODO Auto-generated method stub if(rowIndex < 0 || rowIndex > list.size()){ return null; } switch(columnIndex){ case 0: return this.list.get(rowIndex).getNum(); case 1: return this.list.get(rowIndex).getOrderNum(); case 2: return this.list.get(rowIndex).getFareName(); case 3: return this.list.get(rowIndex).getIdNum(); case 4: return this.list.get(rowIndex).getAirNum(); default: return "-"; } } //获取列名 public String getColumnName(int column) { switch(column){ case 0: return "序号"; case 1: return "订单号"; case 2: return "姓名"; case 3: return "身份证"; case 4: return "航班号"; default: return "-"; } }
这里需要注意的是,获取列名的方法,AbstractTableModel本身自己不再需要重写,需要自己构造,构造方法名一定要与 public String getColumnName(int column) 这个方法名相同,不然无法显示列名,列名默认为A,B,C
该自定义类的实现:
//调用CusTableModel,实现自定义表格 CusTableModel ptm2=new CusTableModel(list3); //本窗口大小,图标 Toolkit tk=Toolkit.getDefaultToolkit(); Dimension e1=jf2.getToolkit().getScreenSize(); jf2.setLocation((d.width-d.width/2)/2,(d.height-d.height/2)/2); jf2.setSize(d.width/2, d.height/2); jf2.setIconImage(tk.getImage("image/ico.jpg")); //组件的添加 jtb2=new JTable(ptm2); //将JTable加入jscrollPlane里面,不然无法显示JTable jsp2=new JScrollPane(jtb2); //实现点击表格的列名进行排序 RowSorter<TableModel>sort2=new TableRowSorter<TableModel>(ptm2); jtb2.setRowSorter(sort2); //设置行距 jtb2.setPreferredScrollableViewportSize(e1); //编辑表格不可编辑 jtb2.setEnabled(false); //设置表信息 jsp2.setBorder(BorderFactory.createTitledBorder("乘客信息")); //将JScrollPlane放置中心 jf2.add(BorderLayout.CENTER,jsp2);
阅读全文
0 0
- Java 自定义的JTable
- java swing 中操作对象jtable 的方法 自定义对象jtable工具类
- java swing Jtable 自定义 表格
- (demo) : jtable的自定义cell
- JAVA JTable的使用
- Java中JTable的用法
- Java中JTable的用法
- Java中JTable的用法
- Java - 表格JTable的用法
- Java 中JTable的用法
- JAVA JTable的实用使用方法
- java中JTable的使用
- java中JTable的用法
- JAVA课程设计-JTable的设计
- Swing自定义JTable列的宽度
- Java从入门到精通 - Swing表格自定义JTable
- Java Swing JTable 表格【11:表格使用自定义渲染器】
- java API 关于Jtable 前面的内容
- BAT机器学习面试题及解析(281-285题)
- lightoj1008 Fibsieve`s Fantabulous Birthday
- 手把手教你用Python实现人脸识别
- synchronized的使用实例
- Java中Class类详解、用法及泛化
- Java 自定义的JTable
- 小团队如何运营一款棋牌游戏
- java实现蓝桥回型取数
- C/C++的区别(默认值、内联函数、函数重载、const、引用、参数、返回值)
- JDK7之try-with-resources异常处理
- [Notice] 我的新博客 ryuzhihao.cc(CSDN也会更新)
- 数据结构实验之排序六:希尔排序
- 最大公因数
- 总结(12.11-12.21)