Java examples for Swing:JTable Column
set JTable Column Widths
/*/*from w ww . j a v a2 s . c o m*/ * Copyright 2015 Matthew Aguirre * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ //package com.java2s; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.SwingUtilities; import javax.swing.table.TableColumnModel; public class Main { public static void setColumnWidths(JTable p_Table, int[] p_ColumnWidths) { TableColumnModel columns = p_Table.getTableHeader() .getColumnModel(); // when restoring from the prefs with a new version of the product, // then it is possible that: p_ColumnWidths.length != // columns.getColumnCount() if (p_ColumnWidths == null || p_ColumnWidths.length != columns.getColumnCount()) { return; } for (int i = 0, c = columns.getColumnCount(); i < c; i++) { columns.getColumn(i).setPreferredWidth(p_ColumnWidths[i]); } p_Table.getTableHeader().resizeAndRepaint(); JScrollPane scrollpane = findScrollPane(p_Table); if (scrollpane != null) { scrollpane.invalidate(); } p_Table.invalidate(); } public static JScrollPane findScrollPane(JTable p_Table) { return (JScrollPane) SwingUtilities.getAncestorOfClass( JScrollPane.class, p_Table); } }