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

刘二芳0

刘二芳0

2016-02-19 09:41

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

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

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

(本文来源于图老师网站,更多请访问http://m.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://m.tulaoshi.com/bianchengyuyan/)
展开更多 50%)
分享

猜你喜欢

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

编程语言 网络编程
基于JTable的列宽与内容自适应的实现方法

解决列高度自适应(列高度相同)的五种方法

Web开发
解决列高度自适应(列高度相同)的五种方法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

DELPHI中自适应表单的实现

编程语言 网络编程
DELPHI中自适应表单的实现

通过JAVAScript实现页面自适应

Web开发
通过JAVAScript实现页面自适应

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

圆角自适应宽度按钮的css实现

Web开发
圆角自适应宽度按钮的css实现

使两个iframe的高度与内容自适应,且相等

Web开发
使两个iframe的高度与内容自适应,且相等

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

win10 如何关闭windows defender

win10 如何关闭windows defender

代码与页面的分离

代码与页面的分离
下拉加载更多内容 ↓