|
JavaTM 2 Platform Standard Edition |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--javax.swing.table.TableColumn
A TableColumn represents all the attributes of a column in a JTable, such as width, resizibility, minimum and maximum width. In addition, the TableColumn provides slots for a renderer and editor that can be used to display and edit the values in this column.
It is also possible to specify renderers and editors on a per type basis rather than a per column basis - see the setDefaultRenderer(Class) method in the JTable. This default mechanism is only used when the renderer (or editor) in the TableColumn is null.
The TableColumn stores the link between the columns in the JTable and the columns in the TableModel. This, the modelIndex, is the column in the TableModel which will be queried for the data values for the cells in this column. As the column moves around in the view this modelIndex does not change.
Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. A future release of Swing will provide support for long term persistence.
TableColumnModel
,
DefaultTableColumnModel
,
JTable.getDefaultRenderer(Class)
,
JTable.getDefaultEditor(Class)
,
JTable.getCellRenderer(int, int)
,
JTable.getCellEditor(int, int)
, Serialized FormField Summary | |
static String |
CELL_RENDERER_PROPERTY
Bound property name. |
protected TableCellEditor |
cellEditor
The editor used to edit the data cells of the column |
protected TableCellRenderer |
cellRenderer
The renderer used to draw the data cells of the column |
static String |
COLUMN_WIDTH_PROPERTY
Bound property name. |
static String |
HEADER_RENDERER_PROPERTY
Bound property name. |
static String |
HEADER_VALUE_PROPERTY
Bound property name. |
protected TableCellRenderer |
headerRenderer
The renderer used to draw the header of the column |
protected Object |
headerValue
The header value of the column |
protected Object |
identifier
This object is not used internally by the drawing machinery of the JTable. |
protected boolean |
isResizable
Resizable flag |
protected int |
maxWidth
The maximum width of the column |
protected int |
minWidth
The minimum width of the column |
protected int |
modelIndex
The index of the column in the model which is to be displayed by this TableColumn. |
protected int |
resizedPostingDisableCount
Counter used to disable posting of resizing notifications until the end of the resize |
protected int |
width
The width of the column |
Constructor Summary | |
TableColumn()
Cover method, using a default model index of 0, default width of 75, a null renderer and a null editor. |
|
TableColumn(int modelIndex)
Cover method, using a default width of 75, a null renderer and a null editor. |
|
TableColumn(int modelIndex,
int width)
Cover method, using a null renderer and a null editor. |
|
TableColumn(int modelIndex,
int width,
TableCellRenderer cellRenderer,
TableCellEditor cellEditor)
Creates and initializes an instance of TableColumn with modelIndex. |
Method Summary | |
void |
addPropertyChangeListener(PropertyChangeListener listener)
Add a PropertyChangeListener to the listener list. |
protected TableCellRenderer |
createDefaultHeaderRenderer()
|
void |
disableResizedPosting()
Turns off listener-notifications would otherwise occur when a column is resized. |
void |
enableResizedPosting()
Turns on listener-notifications so that listeners are once again informed when a column is resized. |
TableCellEditor |
getCellEditor()
Returns the TableCellEditor used by the JTable to draw values for this column. |
TableCellRenderer |
getCellRenderer()
Returns the TableCellRenderer used by the JTable to draw values for this column. |
TableCellRenderer |
getHeaderRenderer()
Returns the TableCellRenderer used to draw the header of the TableColumn. |
Object |
getHeaderValue()
Returns the Object used as the value for the header renderer. |
Object |
getIdentifier()
Returns the identifier object for this column. |
int |
getMaxWidth()
Returns the maximum width for the TableColumn. |
int |
getMinWidth()
Returns the minimum width for the TableColumn. |
int |
getModelIndex()
Gets the model index for this column. |
int |
getPreferredWidth()
Returns the preferred width of the TableColumn. |
boolean |
getResizable()
Returns true if the user is allowed to resize the TableColumn width, false otherwise. |
int |
getWidth()
Returns the width of the TableColumn. |
void |
removePropertyChangeListener(PropertyChangeListener listener)
Remove a PropertyChangeListener from the listener list. |
void |
setCellEditor(TableCellEditor anEditor)
Sets the TableCellEditor used by JTable to draw individual values for this column to anEditor. |
void |
setCellRenderer(TableCellRenderer aRenderer)
Sets the TableCellRenderer used by JTable to draw individual values for this column to aRenderer. |
void |
setHeaderRenderer(TableCellRenderer aRenderer)
Sets the TableCellRenderer used to draw the TableColumn's header to aRenderer. |
void |
setHeaderValue(Object aValue)
Sets the Object used as the value for the headerRenderer Posts a bound property change notification with the name HEADER_VALUE_PROPERTY. |
void |
setIdentifier(Object anIdentifier)
Sets the TableColumn's identifier to anIdentifier. |
void |
setMaxWidth(int maxWidth)
Sets the TableColumn's maximum width to newMaxWidth, also adjusting the current width if it's greater than this value. |
void |
setMinWidth(int minWidth)
Sets the TableColumn's minimum width to newMinWidth, also adjusting the current width if it's less than this value. |
void |
setModelIndex(int anIndex)
Sets the model index for this column. |
void |
setPreferredWidth(int preferredWidth)
Sets this column's preferred width to preferredWidth. |
void |
setResizable(boolean flag)
Sets whether the user can resize the receiver in its JTableView. |
void |
setWidth(int width)
This method should not be used to set the widths of columns in the JTable - use, setPreferredWidth() instead. |
void |
sizeWidthToFit()
Resizes the TableColumn to fit the width of its header cell. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
Field Detail |
public static final String COLUMN_WIDTH_PROPERTY
public static final String HEADER_VALUE_PROPERTY
public static final String HEADER_RENDERER_PROPERTY
public static final String CELL_RENDERER_PROPERTY
protected int modelIndex
protected Object identifier
protected int width
protected int minWidth
protected int maxWidth
protected TableCellRenderer headerRenderer
protected Object headerValue
protected TableCellRenderer cellRenderer
protected TableCellEditor cellEditor
protected boolean isResizable
protected transient int resizedPostingDisableCount
Constructor Detail |
public TableColumn()
public TableColumn(int modelIndex)
public TableColumn(int modelIndex, int width)
public TableColumn(int modelIndex, int width, TableCellRenderer cellRenderer, TableCellEditor cellEditor)
modelIndex
- the column in the model which provides the values for this columnJTable.getDefaultRenderer(Class)
,
JTable.getDefaultEditor(Class)
,
JTable.getCellRenderer(int, int)
,
JTable.getCellEditor(int, int)
Method Detail |
public void setModelIndex(int anIndex)
public int getModelIndex()
public void setIdentifier(Object anIdentifier)
anIdentifier
- an identifier for this columngetIdentifier()
public Object getIdentifier()
getHeaderValue()
as a default.setIdentifier(java.lang.Object)
public void setHeaderRenderer(TableCellRenderer aRenderer)
aRenderer
- the new header renderergetHeaderRenderer()
public TableCellRenderer getHeaderRenderer()
setHeaderRenderer(javax.swing.table.TableCellRenderer)
,
setHeaderValue(java.lang.Object)
public void setHeaderValue(Object aValue)
aValue
- the new header valuegetHeaderValue()
public Object getHeaderValue()
setHeaderValue(java.lang.Object)
public void setCellRenderer(TableCellRenderer aRenderer)
aRenderer
- the new data cell renderergetCellRenderer()
public TableCellRenderer getCellRenderer()
setCellRenderer(javax.swing.table.TableCellRenderer)
,
JTable.setDefaultRenderer(java.lang.Class, javax.swing.table.TableCellRenderer)
public void setCellEditor(TableCellEditor anEditor)
anEditor
- the new data cell editorgetCellEditor()
public TableCellEditor getCellEditor()
setCellEditor(javax.swing.table.TableCellEditor)
,
JTable.setDefaultEditor(java.lang.Class, javax.swing.table.TableCellEditor)
public void setWidth(int width)
This methods, sets this column's width to newWidth. If newWidth exceeds the minimum or maximum width, it's adjusted to the appropriate limiting value. Posts a bound property change notification with the name COLUMN_WIDTH_PROPERTY.
newWidth
- The new width valuegetWidth()
,
setMinWidth(int)
,
setMaxWidth(int)
,
setPreferredWidth(int)
,
JTable.sizeColumnsToFit(int)
public int getWidth()
setWidth(int)
public void setPreferredWidth(int preferredWidth)
For details on how the widths of columns in the JTable (and JTableHeader) are calculated from the preferredWidth, see the sizeColumnsToFit(int) method in the JTable.
preferredWidth
- The new preferred width.getPreferredWidth()
,
JTable.sizeColumnsToFit(int)
public int getPreferredWidth()
setPreferredWidth(int)
public void setMinWidth(int minWidth)
newMinWidth
- the new minimum width valuegetMinWidth()
,
setPreferredWidth(int)
,
setMaxWidth(int)
public int getMinWidth()
setMinWidth(int)
public void setMaxWidth(int maxWidth)
newMaxWidth
- the new maximum width valuegetMaxWidth()
,
setPreferredWidth(int)
,
setMinWidth(int)
public int getMaxWidth()
setMaxWidth(int)
public void setResizable(boolean flag)
flag
- true if the column isResizablegetResizable()
public boolean getResizable()
setResizable(boolean)
public void sizeWidthToFit()
setPreferredWidth(int)
public void disableResizedPosting()
public void enableResizedPosting()
public void addPropertyChangeListener(PropertyChangeListener listener)
A PropertyChangeEvent will get fired in response to an explicit setFont, setBackground, or SetForeground on the current component. Note that if the current component is inheriting its foreground, background, or font from its container, then no event will be fired in response to a change in the inherited property.
listener
- The PropertyChangeListener to be addedpublic void removePropertyChangeListener(PropertyChangeListener listener)
listener
- The PropertyChangeListener to be removedprotected TableCellRenderer createDefaultHeaderRenderer()
|
JavaTM 2 Platform Standard Edition |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |