1. 程式人生 > >實現JTable的列寬與內容的自適應

實現JTable的列寬與內容的自適應

 JTable預設的各列寬度平均,下函式可以實現各列寬度與內容長度適應!來自網際網路~

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

相關推薦

實現JTable內容適應

 JTable預設的各列寬度平均,下函式可以實現各列寬度與內容長度適應!來自網際網路~ public void FitTableColumns(JTable myTable){  JTableHeader header = myTable.getTableHeader()

實現左邊定,右邊適應佈局

簡言之,欲實現下面效果 下面是幾種方法: 1、利用flex HTML <div class="use-flex"> <div class="col1"><

CSS如何實現div寬度根據內容適應

應用 錯誤 clas ftw strong 有效 不能 why 如何 CSS如何實現div寬度根據內容自適應:建議:盡可能的手寫代碼,可以有效的提高學習效率和深度。在實際應用中,可能有這樣的需求,那就是需要div根據內容進行寬度自適應。有很多開發者可能誤以為如果不設定div

簡單實現iframe的高度根據頁面內容適應(jQuery方式)

eight var 調用 pos jquery 出現 引用 main body 這篇文章主要介紹了簡單實現iframe的高度根據頁面內容自適應(jQuery方式),以及在ie瀏覽器下的相關問題 方式一: //註意:下面的代碼是放在和iframe同一個頁面中調用 $("

jQuery簡單實現iframe的高度根據頁面內容適應的方法(轉)

var contents color iframe meid clas 簡單實現 方式 根據 本文實例講述了jQuery簡單實現iframe的高度根據頁面內容自適應的方法。分享給大家供大家參考,具體如下: 方式1: //註意:下面的代碼是放在和iframe同一個

css實現兩欄佈局,左側固定,右側適應的七種方法

一個面試會問的問題,如何實現兩個盒子,左側固定寬度,右側自適應。 下面是實現的其中方法: 1、利用 calc 計算寬度的方法 css程式碼如下: .box{overflow: hidden;height: 100px;margin: 10px 0;} .box&

七牛雲:使用七牛的銳智轉碼功能,簡單實現播放內容適應進行轉碼

文章目錄 前言 程式碼 結果 前言 銳智轉碼無需使用者指定輸出視訊的位元速率幀率等,而是由銳智轉碼依據源視訊場景內容智慧匹配最佳轉碼引數組合。 這個可以解決很大一部分的點播視訊 注:銳智轉碼目前僅支援視訊轉碼和視訊音訊同時轉碼,其

適應佈局:左右定,中間適應

一個不定寬度的容器被分為左中右三列,左右兩列定寬100px,中間列自適應剩餘寬度,且三列之間間距為10px。 1.float+margin+fix HTML結構如下 <div class="parent"> <div class="left"&

【CSS小技巧】 用 CSS 實現一個高等比適應容器

問題 overflow 比較 tor 移動 刪除 flow 瀏覽器兼容性 ron 不知道怎麽起個標題能更加清楚的說清楚我的意圖,那就打個比方吧:比如我們在手機端上放一張寬度 100% 的圖片,我們如果不設置圖片的高度,那麽這個圖片會根據圖片的原始尺寸等比縮放。今天我們要講的

CSS兩欄佈局,左邊定,右邊適應怎麼實現

這是頁面佈局的一個經典問題,總結下幾種可行性的方法。 左邊佈局定好寬度,右邊佈局實現自適應。 方法一:可以用用flex佈局,給父容器設定 display:flex;Right部分設定 flex:1 ;left只是之前定好的寬度; <!DOCTYPE html>

css flex經典三大布局:垂直居中,兩等高,適應

pbm outline 布局 str ack 垂直 一個 style pin 用flex實現css裏的三大經典布局,不需要額外很多代碼。 1,垂直居中 :子元素在父元素中,水平垂直居中。justify-content:center設置水平方向居中,align-center

Qt高仿Excel表格元件-支援凍結、凍結行、內容適應和合並單元格

目錄 一、概述 二、效果展示 三、實現思路 1、凍結行、凍結列 2、行高自適應 3、螞蟻線 四、測試程式碼 1、新增表格資料

要布局左右兩邊定,中間適應

wrapper center spa block ear pos 修改 src pla 最近在布局時,有一些問題,左右兩邊定寬,中間自適應,首先想到的就是左浮動和右浮動,但是在操作時還是會出現一些問題 1. 采用左邊左浮動,右邊右浮動,中間塊用margin-left/mar

實現不同分辨率下高度適應

tex 微軟雅黑 java utf har -c 自適應 height ont html: <!DOCTYPE html> <html> <head> <meta charset="UTF-8">

兩側定,中欄適應布局

span width idt 實現 div col splay nbsp pre 利用flex實現 .parent{display:flex;} .left,.right{width:100px;} .center{flex:1;} 兩側定寬,中欄自適應布局

使表格隨著內容適應寬度

gpo clas pac 自適應 hit style pre span col td{  white-space: nowrap; }   簡單粗暴。使表格隨著內容自適應寬度

頁面布局方案-左定,右適應

eight idt all con .com float auto pan bubuko 左定寬,右自適應 兩列布局,左邊定寬,右邊自適應,高度自適應。 效果: 代碼: 1 <!DOCTYPE html> 2 <html> 3 <

兩欄佈局,左邊定,右邊適應

html結構: <div class="parent"> <div class="one"></div> <div class="two"></div> </div> 方法一:父元素display:flex

rem佈局實現不同解析度移動終端的適應、整體縮放

前言 現在手機螢幕解析度越來越多,但我們的需求比較唯一——最佳視覺。  當用戶瀏覽網頁時,根據螢幕的尺寸,來向用戶展示更適合使用者的佈局、文字、圖片、按鈕等等,因此,rem應運而生。  rem(font size of the root element)是指相對於根元素的字型

calc()用於一行中中間內容適應

在面試前沒有想過中間內容自適應的問題,在一次面試中考官問到知道左右兩邊的欄的寬度如何讓中間的寬度自適應,但是回答的五花八門,回來後查了查使用css3中的calc()  其實calc是英文單詞calculate(計算)的縮寫,是css3的一個新增的功能,用來指定元素的長度。比如說,你可以