我是靠谱客的博主 俊逸小懒虫,最近开发中收集的这篇文章主要介绍JTable隐藏某列后如何再恢复显示?,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

下面是我总结的一个操作表格列隐藏和显示的工具类:

Java代码   收藏代码
  1. package com.swing.table;  
  2.   
  3. import javax.swing.JTable;  
  4. import javax.swing.table.TableColumn;  
  5. import javax.swing.table.TableColumnModel;  
  6.   
  7. public class TableUtil3  
  8. {  
  9.       
  10.     private TableUtil3()  
  11.     {  
  12.         throw new Error("Don't let anyone instantiate this class.");  
  13.     }  
  14.       
  15.     /*** 
  16.      * hide specified column 
  17.      *  
  18.      * @param table 
  19.      * @param column 
  20.      */  
  21.     public static void hideTableColumn(JTable table, int column)  
  22.     {  
  23.         TableColumnModel columns = table.getColumnModel();  
  24.         TableColumn column_id_data = columns.getColumn(column);  
  25.         column_id_data.setMaxWidth(0);  
  26.         column_id_data.setPreferredWidth(0);  
  27.         column_id_data.setMinWidth(0);  
  28.           
  29.         TableColumn column_id_header = table.getTableHeader().getColumnModel()  
  30.                 .getColumn(column);  
  31.         column_id_header.setMaxWidth(0);  
  32.         column_id_header.setPreferredWidth(0);  
  33.         column_id_header.setMinWidth(0);  
  34.     }  
  35.     /*** 
  36.      * show specified column 
  37.      *  
  38.      * @param table 
  39.      * @param column 
  40.      * @param width 
  41.      */  
  42.     public static void showTableColumn(JTable table, int column)  
  43.     {  
  44.         int width=40;  
  45.         TableColumnModel columns = table.getColumnModel();  
  46.         TableColumn column_id_data = columns.getColumn(column);  
  47.           
  48.         column_id_data.setMaxWidth(width+100);  
  49.         column_id_data.setPreferredWidth(width);  
  50.         column_id_data.setMinWidth(width);  
  51.          
  52. //        column_id_data.setResizable(true);  
  53.         TableColumn column_id_header = table.getTableHeader().getColumnModel()  
  54.                 .getColumn(column);  
  55.         column_id_header.setMaxWidth(width+100);  
  56.         column_id_header.setPreferredWidth(width);  
  57.         column_id_header.setMinWidth(width);  
  58. //        column_id_header.setResizable(true);  
  59.     }  
  60. }  

调用上述工具类的代码如下: 

//show id column

JButton showIDBtn = new JButton("show id");

showIDBtn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

TableUtil3.showTableColumn(table, 6);

}

});

button02Pane.add(showIDBtn);

 

//hide id column

JButton hideIDBtn = new JButton("hide id");

hideIDBtn.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

TableUtil3.hideTableColumn(table, 6);

}

});

button02Pane.add(hideIDBtn);

最后

以上就是俊逸小懒虫为你收集整理的JTable隐藏某列后如何再恢复显示?的全部内容,希望文章能够帮你解决JTable隐藏某列后如何再恢复显示?所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部