当前位置:  开发笔记 > 编程语言 > 正文

无法获取隐藏的JTable列

如何解决《无法获取隐藏的JTable列》经验,为你挑选了1个好方法。

在此输入图像描述我使用带有两个按钮的JTable(活动和非活动按钮).当我点击非活动按钮时,我隐藏了表格的第一列.另外,当我点击"活动"按钮时,我会尝试显示第一列.但问题是,当我点击"活动"按钮时,我无法显示第一列的首选大小.

这是隐藏第一列的代码,

expTable.getColumnModel().getColumn(0).setMinWidth(0);
expTable.getColumnModel().getColumn(0).setMaxWidth(0);
expTable.getColumnModel().getColumn(0).setWidth(0); 

这是获取拳头栏的代码,

expTable.getColumnModel().getColumn(0).setMinWidth(0);
expTable.getColumnModel().getColumn(0).setMaxWidth(300);
expTable.getColumnModel().getColumn(0).setWidth(100);

首先,我单击"非活动"按钮,然后单击"活动"按钮.但这不起作用.

有任何想法如何做以上.

private void inactiveButtonActionPerformed(java.awt.event.ActionEvent evt){                                                   
     expTable.getColumnModel().getColumn(0).setMinWidth(0);
     expTable.getColumnModel().getColumn(0).setMaxWidth(0);
     expTable.getColumnModel().getColumn(0).setWidth(0);
  }


private void activeButtonActionPerformed(java.awt.event.ActionEvent evt)                                             
    {                                                 
        expTable.getColumnModel().getColumn(0).setMinWidth(0);
        expTable.getColumnModel().getColumn(0).setMaxWidth(300);
        expTable.getColumnModel().getColumn(0).setWidth(100);
    }

camickr.. 5

不要试图TableColumn通过播放宽度来"隐藏"a .的TableColumn仍是表的一部分,所以当逐列用户的标签,焦点将转到隐藏列,并消失在用户查看,这是非常令人困惑.

相反,你应该删除TableColumnTableColumnModel.然后您可以在需要时添加TableColumn背面TableColumnModel.

查看表列管理器,它为您管理此概念.如果您不使用该类的完整功能,则可以使用hideColumn(...)showColumn(...)在第一列上进行简单切换.



1> camickr..:

不要试图TableColumn通过播放宽度来"隐藏"a .的TableColumn仍是表的一部分,所以当逐列用户的标签,焦点将转到隐藏列,并消失在用户查看,这是非常令人困惑.

相反,你应该删除TableColumnTableColumnModel.然后您可以在需要时添加TableColumn背面TableColumnModel.

查看表列管理器,它为您管理此概念.如果您不使用该类的完整功能,则可以使用hideColumn(...)showColumn(...)在第一列上进行简单切换.

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有