基于JTable的列宽与内容自适应的实现方法

2016-02-19 09:41 8 1 收藏

下面图老师小编要向大家介绍下基于JTable的列宽与内容自适应的实现方法,看起来复杂实则是简单的,掌握好技巧就OK,喜欢就赶紧收藏起来吧!

【 tulaoshi.com - 编程语言 】

JTable默认的各列宽度平均,下函数可以实现各列宽度与内容长度适应!
代码如下:

public void FitTableColumns(JTable myTable){
  JTableHeader header = myTable.getTableHeader();
     int rowCount = myTable.getRowCount();

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

     Enumeration columns = myTable.getColumnModel().getColumns();
     while(columns.hasMoreElements()){
         TableColumn column = (TableColumn)columns.nextElement();
         int col = header.getColumnModel().getColumnIndex(column.getIdentifier());
         int width = (int)myTable.getTableHeader().getDefaultRenderer()
                 .getTableCellRendererComponent(myTable, column.getIdentifier()
                         , false, false, -1, col).getPreferredSize().getWidth();
         for(int row = 0; rowrowCount; row++){
             int preferedWidth = (int)myTable.getCellRenderer(row, col).getTableCellRendererComponent(myTable,
               myTable.getValueAt(row, col), false, false, row, col).getPreferredSize().getWidth();
             width = Math.max(width, preferedWidth);
         }
         header.setResizingColumn(column); // 此行很重要
         column.setWidth(width+myTable.getIntercellSpacing().width);
     }

使用方法:FitTableColumns(yourTableName);

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

来源:http://www.tulaoshi.com/n/20160219/1591728.html

延伸阅读
标签: Web开发
此代码欢迎各位转摘;网上有好多,但没有真正的自适应高度,看到一个自适应宽度的,还可以,没有我们长用的控制一定宽度的。 测试通过:IE5、IE5.5、IE6、IE7、FF其他的没有测试,如果有问题在下面留言。 说下主要的CSS在此页面的作用,:overflow:hidden;强制contain自适应高度(看背景),clear:both这个就不用说啦! [html] style type="text/c...
      好几次看到有人提问问到如何实现 iframe 的自适应高度,能够随着页面的长度自动的适应以免除页面和 iframe 同时出现滚动条的现象,刚好我在工作中也碰到了类似问题,于是上网翻查,东抄抄西看看,弄出来这么一个函数,贴到页面里面就能用了。不敢独享,大家要是觉得有用,欢迎使用 源代码如下 <script type="t...
标签: Web开发
网页布局中常有的一种情况就是网页主体部分分成一行两列;而在很多种情况下,设计师们常把左右两列的背景色设计成不同色彩,以实现内容块的明显区分;但这样的设计给布局提出了一个看似简单,而实现非常难的问题;那就是左右两列怎么样实现背景高度自适应,及左边内容高于右边时,右边背景色也要和左边一样;右边内容高于左边时,左边背景色...
标签: Web开发
在制作网页的过程中,自适应问题是经常遇到,而又最让人头疼的,看了好多种解决的方法,但是都不是万能的。今天遇到这个问题,实在让我挠头,借鉴了 Shark的方法,又给了我一个新思路。当时没仔细看LBS的样式表,今天才发现,.clear用的就是这个方法。接下来,我会做个关于自适应高度问题的汇总,以便今后遇到问题时候更快解决。 为了解决...
标签: Web开发
以前的解决方法主要是利用js来实现,但用过的人都知道该办法有点繁琐。还有一种是在外部容器定义over-flow:hidden。但这种办法只会切割图片而不会自动适用。 关键在于:max-width:780px;以及下面那行。 固定像素适应: 以下是引用片段: style type="text/css" !-- body { font-size: 12px; text-align: center; margin: 0...

经验教程

774

收藏

88
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部