setting the width of a column
The code below is a single-column table which serves as a RowHeader column.
How do I set the width of the column?
I have made a few tries at it without success, as below.
import javax.swing.*;
import javax.swing.table.*;
publicclass MyRowHeaderextends JTable{
// DefaultTableColumnModel rowHeaderColumnModel;
protected JTable mainTable;
public MyRowHeader(JTable table1){
super();
mainTable = table1;
setModel(new RowNumberTableModel());
setPreferredScrollableViewportSize(getMinimumSize());
setRowSelectionAllowed(false);
//setRowHeight( 20 );
setRowHeight( mainTable.getRowHeight() );
TableColumn rowHeaderColumn =new TableColumn( 0, 41 );// - rowHeaderColumnModel
rowHeaderColumn.setHeaderValue("sources" );
DefaultTableColumnModel rowHeaderColumnModel =new DefaultTableColumnModel();
rowHeaderColumnModel.addColumn( rowHeaderColumn );
setColumnModel( rowHeaderColumnModel );
JComponent renderer = (JComponent)getDefaultRenderer(Object.class);
LookAndFeel.installColorsAndFont(renderer,
"TableHeader.background",
"TableHeader.foreground",
"TableHeader.font");
LookAndFeel.installBorder(this,"TableHeader.cellBorder");
}
publicint getRowHeight(int row){
//return 20;
return mainTable.getRowHeight();
}
class RowNumberTableModelextends AbstractTableModel{
publicint getRowCount(){
return mainTable.getModel().getRowCount();
}
publicint getColumnCount(){
return 1;
}
public Object getValueAt(int row,int column){
returnnew Integer(row + 1);
}
}
}
Many thanks in advance.

