请问如何能把一个JTable的每列宽度设置为不同的值??或者能够根据单元格中的内容大小按比例调整每列的宽度?

解决方案 »

  1.   

     void setAutoCreateColumnsFromModel(boolean autoCreateColumnsFromModel) 
              设置此表的 autoCreateColumnsFromModel 标志。 
     void setAutoResizeMode(int mode) 
              当调整表的大小时,设置表的自动调整模式。 
     void setCellEditor(TableCellEditor anEditor) 
              设置 cellEditor 变量。 
     void setCellSelectionEnabled(boolean cellSelectionEnabled) 
              设置此表是否允许同时存在行选择和列选择。 
     void setColumnModel(TableColumnModel columnModel) 
              将此表的列模型设置为 newModel,并为来自新列模型的侦听器通知注册它。 
     void setColumnSelectionAllowed(boolean columnSelectionAllowed) 
              设置是否可以选择此模型中的列。 
     void setColumnSelectionInterval(int index0, int index1) 
              选择从 index0 到 index1(包含)之间的列。 
     void setDefaultEditor(Class<?> columnClass, TableCellEditor editor) 
              如果尚未在 TableColumn 中设置编辑器,则设置要使用的默认单元格编辑器。 
     void setDefaultRenderer(Class<?> columnClass, TableCellRenderer renderer) 
              如果在 TableColumn 中未设置渲染器,则设置要使用的默认单元格渲染器。 
     void setDragEnabled(boolean b) 
              设置 dragEnabled 属性,该属性必须为 true 才能确保启用对此组件的自动拖动处理(拖放操作的第一部分)。 
     void setEditingColumn(int aColumn) 
              设置 editingColumn 变量。 
     void setEditingRow(int aRow) 
              设置 editingRow 变量。 
     void setGridColor(Color gridColor) 
              将用来绘制网格线的颜色设置为 gridColor 并重新显示它。 
     void setIntercellSpacing(Dimension intercellSpacing) 
              将 rowMargin 和 columnMargin(单元格之间间距的高度和宽度)设置为 intercellSpacing。 
     void setModel(TableModel dataModel) 
              将此表的数据模型设置为 newModel,并为来自新数据模型的侦听器通知注册它。 
     void setPreferredScrollableViewportSize(Dimension size) 
              设置此表视口的首选大小。 
     void setRowHeight(int rowHeight) 
              将所有单元格的高度设置为 rowHeight(以像素为单位)、重新验证并重新绘制它。 
     void setRowHeight(int row, int rowHeight) 
              将 row 的高度设置为 rowHeight、重新验证并重新绘制它。 
     void setRowMargin(int rowMargin) 
              设置相临行中单元格之间的间距。 
     void setRowSelectionAllowed(boolean rowSelectionAllowed) 
              设置是否可以选择此模型中的行。 
     void setRowSelectionInterval(int index0, int index1) 
              选择从 index0 到 index1(包含)之间的行。 
     void setSelectionBackground(Color selectionBackground) 
              设置选定单元格的背景色。 
     void setSelectionForeground(Color selectionForeground) 
              设置选定单元格的前景色。 
     void setSelectionMode(int selectionMode) 
              将表的选择模式设置为只允许单个选择、单个连续单元格选择或多个连续选择。 
     void setSelectionModel(ListSelectionModel newModel) 
              将此表的行选择模型设置为 newModel,并为来自新选择模型的侦听器通知进行注册。 
     void setShowGrid(boolean showGrid) 
              设置表是否绘制单元格周围的网格线。 
     void setShowHorizontalLines(boolean showHorizontalLines) 
              设置表是否绘制单元格之间的水平线。 
     void setShowVerticalLines(boolean showVerticalLines) 
              设置表是否绘制单元格之间的垂直线。 
     void setSurrendersFocusOnKeystroke(boolean surrendersFocusOnKeystroke) 
              设置由于 JTable 为某个单元格转发键盘事件而导致编辑器被激活时,此 JTable 中的编辑器是否获得键盘焦点。 
     void setTableHeader(JTableHeader tableHeader) 
              将此 JTable 所使用的 tableHeader 设置为 newHeader。 
     void setUI(TableUI ui) 
              设置呈现此组件并进行重新绘制的 L&F 对象。 
     void setValueAt(Object aValue, int row, int column) 
              设置表模型中 row 和 column 位置的单元格值。 
      

  2.   

    大哥,我也有API,粘这么多方法在这干什么啊??你能告诉我具体怎么实现吗??
      

  3.   

    getColumnModel().getColumn().setWidth();