源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2020-04-30 23:42 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:基于JTable的列宽与内容自适应的实现方法
JTable默认的各列宽度平均,下函数可以实现各列宽度与内容长度适应!
[u]复制代码[/u] 代码如下:
public void FitTableColumns(JTable myTable){   JTableHeader header = myTable.getTableHeader();      int rowCount = myTable.getRowCount();      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; row<rowCount; 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);
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部