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.

[3501 byte] By [javaqq] at [2007-9-26 1:51:21]
# 1

I think you are looking for this code:

TableColumn QuantityColumn = tableView.getColumn("Quantity");

DefaultTableCellRenderer QuantityColumnRenderer = new DefaultTableCellRenderer();

QuantityColumn.setCellRenderer(QuantityColumnRenderer);

QuantityColumn.setPreferredWidth(50);

amnonm at 2007-6-29 2:59:42 > top of Java-index,Archived Forums,Swing...