当前位置: 首页 > ai >正文

JTable动态显示隐藏列

原文:https://yq.aliyun.com/articles/40833

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

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);

http://www.xdnf.cn/news/11609.html

相关文章:

  • Python 计算机视觉(一) —— 数字图像处理基础
  • USB 2.0_ser!或者U232-P9 型USB转串Win7 32位或64位驱动 以及 USB转串串口序号查看和设置
  • VRML示例程序。
  • 网站seo诊断软件免费
  • WSL2 + RK3568 SDK 编译踩坑笔记
  • 《网瘾战争》如此震撼之作,不看枉为国人
  • 软件界面原型设计工具 Desktop 腾讯贡献的免费软件 UID UI Designer
  • Apache Ant
  • windows server 2003序列号
  • qq的一些代码
  • Qt实战-简单的点名程序和抽奖程序
  • 找不到minidump.dmp文件
  • C运行时库(C Run-time Library)详解
  • 各大搜索引擎提交网站的入口地址
  • ⭐️最全面的Windows Vista原版系统ISO镜像下载
  • 最好用的六款虚拟机软件
  • 【谨慎学习】手把手教你破解网站管理后台帐号密码
  • 校内和海内的异同
  • 48.网络安全渗透测试—[穷举篇11]—[webshell密码破解(asp/aspx/php)]
  • 飞信WebService接口
  • python 图片生成视频_python--通过cv2多张图片生成视频
  • mathematica 7.0 破解注册安装全过程
  • 电脑怎么隐藏文件夹?这样做,快速搞定!
  • ViewState 解码工具
  • Java加密技术
  • Java员工信息管理系统(源码+开题)
  • 中移在线2020春季校招java开发岗面经
  • QQ病毒——天眼查询系统
  • 《鬼武者》全攻略
  • 整理38款国外的一些免费虚拟主机,云计算,看看你使用过哪几个