public class ReflectedTableModel extends AbstractTableModel
The sample below will create a JTable with one row of data and one column per property in the Date class (Date has 10 properties in JDK1.3).
final JTable table = new JTable(); final ReflectedTableModel model = new ReflectedTableModel(Date.class); model.getRows().add( new Date() ); table.setModel(model);This sample will only provide columns for month and year.
final JTable table = new JTable(); final ReflectedTableModel model = new ReflectedTableModel(); model.getRows().add( new Date() ); model.getColumns().add( new ReflectedTableModel.ColumnInfo("month") ); model.getColumns().add( new ReflectedTableModel.ColumnInfo("year") ); table.setModel(model);Tip: To enable debugging information call
setTraceChannel(TraceChannel)
with a non-null TraceChannel.
model.setTraceChannel(Trace.out)
Modifier and Type | Class and Description |
---|---|
static class |
ReflectedTableModel.ColumnInfo
This class contains information about one specific column in the table.
|
listenerList
Constructor and Description |
---|
ReflectedTableModel()
Create an empty model with no columns and no rows.
|
ReflectedTableModel(Class clazz)
Create an empty model with no rows but the columns preset to match the
properties in the given class.
|
Modifier and Type | Method and Description |
---|---|
protected void |
assertNotNull(String fieldName,
Object object)
Throw an exception if the specified object is null
|
int |
getColumnCount()
Return the number of columns.
|
String |
getColumnName(int index)
Return the name of the column at the specified index.
|
List |
getColumns()
Return a list containing the ColumnInfo objects that are used to define each
column.
|
int |
getRowCount()
Return the number of rows.
|
List |
getRows()
Return a list containing the objects that are used to create each row.
|
TraceChannel |
getTraceChannel()
Return the channel currently being used for tracing or null if tracing
is disabled.
|
Object |
getValueAt(int rowIndex,
int columnIndex)
Return the specified object.
|
void |
setTraceChannel(TraceChannel channel)
Set the channel to be used for tracing.
|
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt
public ReflectedTableModel()
public ReflectedTableModel(Class clazz) throws IntrospectionException
clazz
- The class to get properties from.IntrospectionException
- If the Introspector is unable to get
the properties for this class.public List getRows()
public List getColumns()
public int getColumnCount()
public int getRowCount()
public Object getValueAt(int rowIndex, int columnIndex)
rowIndex
- The row indexcolumnIndex
- The columnIndexpublic String getColumnName(int index)
getColumnName
in interface TableModel
getColumnName
in class AbstractTableModel
index
- The index of the column.public void setTraceChannel(TraceChannel channel)
channel
- The channel to be used for tracing or null if tracing is
to be disabled.public TraceChannel getTraceChannel()
Copyright © 1998–2014 Gargoyle Software Inc.. All rights reserved.