java表格操作之设置表格列宽

设置所有列的宽度

/**

     * 设置所有列的列宽

     * @param table

     * @param width

     */

    public void setAllColumnWidth(JTable table,int width){

        Enumeration<TableColumn> cms = table.getColumnModel().getColumns();

        while(cms.hasMoreElements()){

            cms.nextElement().setPreferredWidth(width);

        }

    }

设置指定列的宽度

    /**

     * 设置指定列的宽度

     * @param table

     * @param colname  列名 

     * @param width 

     */

    public void setColumnWidth(JTable table,Object colname,int width){

        //此方法是通过equals方法查找的,需要注意列名重复问题

        table.getColumn(colname).setPreferredWidth(width);

    }
    /**

     * 设置指定列的宽度

     * @param table

     * @param column

     * @param width

     */

    public void setColumnWidth(JTable table,int column,int width){

        table.getTableHeader().getColumnModel().getColumn(column).setPreferredWidth(width);

        table.getColumnModel().getColumn(column).setPreferredWidth(width);

    }

隐藏指定列

       /**

    * 设置隐藏列

    * @param i 所隐藏的列

    */

    public void setHideColumn(int i){

        table.getTableHeader().getColumnModel().getColumn(i).setMaxWidth(0);

        table.getTableHeader().getColumnModel().getColumn(i).setMinWidth(0);

        table.getColumnModel().getColumn(i).setMaxWidth(0);

        table.getColumnModel().getColumn(i).setMinWidth(0);    

   }

你可能感兴趣的:(java)