码迷,mamicode.com
首页 > 其他好文 > 详细

JTable的使用

时间:2016-06-11 14:24:50      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:

  • 表格有两部分组成:行标题(Column Header)和行对象(Column Object),行标题是在此行的最上端,代表此数据的意义,行对象是在行标题下的内容。我们可以利用JTable所提供的getTableHeader()方法去的行标题
  • 把JTable放在JScollPane中,这种做法可以讲行标题和行对象完整的显示出来,因为JScollPane会自动取得行标题 如果不想用ScrollPane
  • 如果想设置列宽的值,用TableColumn类所提供的setPreferedWidth()方法来设置,并可利用JTable类所提供的setAutoResizeMode()方法来设置某个列宽时其他列宽的变化情况

技术分享

  • 如果我们要显示的数据不固定或是数据类型不全以String类型显示,我们可以用Swing提供的各种Model设计所需要的表格(javax.swing.table)

 

TableModel

        AbstractTableModel      

 

        DefaultTableModel

TableModel本身是一个Interface,在这个interface定义了若干方法,又因为TableModel本身是一个interface,所以之间实现建立表格不是很方便,所以Java提供了两个类分别实现这个界面,一个是AbstractTableModel抽象类,一个是DefaultTableModel实体类。
三者的关系如图所示:
                      implements                         extends
      TableModel——>AbstractTableModel——>DefaultTableModel        
 
 

     1.AbstractTableModel

**继承这个类我们要自己实现getRowCount方法,getColumnCount方法,getValueAt方法

* 几个比较常用的方法:

       技术分享

技术分享

*JTable的每一行,按照数据类型的不同可以有以下的排列显示方式:

     1.Boolean:以Check Box表示

     2.Number:以JTable表示,文字向右排列

     3.ImageIcon:以图形JLable表示,图形置于JLable的中央

     4.Object:以JLable显示对象的String内容,文字向左排列

     2.  DefaultTableModel

     3.  TableColumnModel

      利用JTable的getColumnModel()方法取得TableColumnModel对象,再利用此对象进行设置

     TableColumn类可针对表格中的每一行进行具体的设置。

    ?如何修改表格内容并能保存修改的值呢

     复写AbstractTableModel的setValueAt和isCellEditor方法

 SelectionModel 

     要想使用ListSelectionModel可利用JTable的getSelectionModel方法取得listselectionmode对象,再利用ListSelectionModel界面所定义的setSelectionmodel()来设置选择模式

        table.setCellSelectionEnabled(true);
        selectionmode=table.getSelectionModel();
selectionmode.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

JTable的事件处理(称为TableModelEvent事件)

     处理TableModelEvent事件我们必须实现TableModelListener界面

      1.如何拦截事件信息?

在AbstractTableModel类中提供注册listener方法:addTableModelListener()

      2.在tableChanged方法中实现代码

JTable的使用

标签:

原文地址:http://www.cnblogs.com/bornfreeonekiss/p/5573692.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!