public class TableColumn extends Object implements Serializable
TableColumn は JTable の列のすべての属性 (幅、サイズ変更可能性、最小と最大の幅など) を表します。さらに、TableColumn は、レンダリングおよびエディタに対して、この列内の値を表示および編集するために使用できるスロットを提供します。
また、列ごとではなくタイプごとにレンダリングおよびエディタを指定することも可能です (JTable クラスの setDefaultRenderer メソッドを参照)。このデフォルトのメカニズムは、TableColumn 内のレンダリング (またはエディタ) が null のときにだけ使用されます。
TableColumn は、JTable の列と TableModel の列のリンクを格納します。modelIndex は、この列のセルのデータ値が問い合わせられる TableModel の列です。ビュー内で列が移動しても、この modelIndex は変わりません。
注: 一部の実装では、すべての TableColumnModel が一意とみなされるため、同じ TableColumn インスタンスを TableColumnModel に何度も追加しないことをお勧めします。モデルから同じ列のデータを使用して TableColumn を表示するには、同じ modelIndex を使用して新しいインスタンスを作成してください。
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースとの互換性がなくなる予定です。現在の直列化のサポートは、短期間の格納や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。1.4 以降、すべての JavaBeansTM 用の長期間の格納サポートが java.beans パッケージに追加されています。XMLEncoder を参照してください。
| 修飾子と型 | フィールドと説明 |
|---|---|
static String |
CELL_RENDERER_PROPERTY
Java 2 プラットフォーム v1.3 では使用しません。
|
protected TableCellEditor |
cellEditor
列のデータセルを編集するために使われるエディタです。
|
protected TableCellRenderer |
cellRenderer
列のデータセルを描画するために使われるレンダリングです。
|
static String |
COLUMN_WIDTH_PROPERTY
Java 2 プラットフォーム v1.3 では使用しません。
|
static String |
HEADER_RENDERER_PROPERTY
Java 2 プラットフォーム v1.3 では使用しません。
|
static String |
HEADER_VALUE_PROPERTY
Java 2 プラットフォーム v1.3 では使用しません。
|
protected TableCellRenderer |
headerRenderer
列のヘッダーを描画するために使われるレンダリングです。
|
protected Object |
headerValue
列のヘッダー値です。
|
protected Object |
identifier
このオブジェクトは、
JTable の描画機構が内部で使用するものではありません。識別子は、テーブル列にタグを付けたり、検索したりする方法の 1 つとして、TableColumn で設定できます。 |
protected boolean |
isResizable
ユーザーが列のサイズを変更できる場合は true です。デフォルトは true です。
|
protected int |
maxWidth
列の最大の幅です。
|
protected int |
minWidth
列の最小の幅です。
|
protected int |
modelIndex
TableColumn が表示するモデルの列のインデックスです。 |
protected int |
resizedPostingDisableCount
非推奨。
Java 2 プラットフォーム v1.3。
|
protected int |
width
列の幅です。
|
| コンストラクタと説明 |
|---|
TableColumn()
デフォルトのモデルインデックスとして 0、デフォルトの幅として 75、レンダリングに
null、およびエディタに null を使用するカバーメソッドです。 |
TableColumn(int modelIndex)
デフォルトの幅として 75、レンダリングに
null、およびエディタに null を使用するカバーメソッドです。 |
TableColumn(int modelIndex, int width)
レンダリングに
null、およびエディタに null を使用するカバーメソッドです。 |
TableColumn(int modelIndex, int width, TableCellRenderer cellRenderer, TableCellEditor cellEditor)
モデルインデックス、幅、セルレンダリング、セルエディタを指定して、
TableColumn のインスタンスを作成し、初期化します。すべての TableColumn コンストラクタはこれに処理を委譲します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
void |
addPropertyChangeListener(PropertyChangeListener listener)
リスナーリストに
PropertyChangeListener を追加します。 |
protected TableCellRenderer |
createDefaultHeaderRenderer()
Java 2 プラットフォーム v1.3 では、
TableColumn コンストラクタはこのメソッドを呼び出しません。 |
void |
disableResizedPosting()
非推奨。
Java 2 プラットフォーム v1.3。
|
void |
enableResizedPosting()
非推奨。
Java 2 プラットフォーム v1.3。
|
TableCellEditor |
getCellEditor()
JTable がこの列の個々の値を編集するために使用する TableCellEditor を返します。 |
TableCellRenderer |
getCellRenderer()
JTable がこの列の個々の値を描画するために使用する TableCellRenderer を返します。 |
TableCellRenderer |
getHeaderRenderer()
TableColumn のヘッダーを描画するために使われる TableCellRenderer を返します。 |
Object |
getHeaderValue()
ヘッダーレンダリングの値として使われる
Object を返します。 |
Object |
getIdentifier()
この列の
identifier オブジェクトを返します。 |
int |
getMaxWidth()
TableColumn の最大幅を返します。 |
int |
getMinWidth()
TableColumn の最小幅を返します。 |
int |
getModelIndex()
この列のモデルインデックスを返します。
|
int |
getPreferredWidth()
TableColumn の適切な幅を返します。 |
PropertyChangeListener[] |
getPropertyChangeListeners()
addPropertyChangeListener() を使用してこの TableColumn に追加されているすべての
PropertyChangeListener の配列を返します。 |
boolean |
getResizable()
ユーザーが
TableColumn の幅を変更できる場合に true を返します。そうでない場合は false を返します。 |
int |
getWidth()
TableColumn の幅を返します。 |
void |
removePropertyChangeListener(PropertyChangeListener listener)
PropertyChangeListener をリスナーリストから削除します。 |
void |
setCellEditor(TableCellEditor cellEditor)
この列のセルを編集するときに使用できるようにエディタを設定します。
|
void |
setCellRenderer(TableCellRenderer cellRenderer)
JTable がこの列の個々の値を描画するために使う TableCellRenderer を設定します。 |
void |
setHeaderRenderer(TableCellRenderer headerRenderer)
TableColumn のヘッダーを描画するために使用される TableCellRenderer を、headerRenderer に設定します。 |
void |
setHeaderValue(Object headerValue)
文字列表現が
headerRenderer の値として使用される Object を設定します。 |
void |
setIdentifier(Object identifier)
TableColumn の識別子を anIdentifier に設定します。 |
void |
setMaxWidth(int maxWidth)
TableColumn の最大幅を maxWidth に設定します。maxWidth が最小幅より小さい場合は、最小幅に設定します。 |
void |
setMinWidth(int minWidth)
TableColumn の最小幅を minWidth に設定し、必要に応じてこの新しい最小幅が 0 <= minWidth <= maxWidth になるように調整します。 |
void |
setModelIndex(int modelIndex)
この列のモデルインデックスを設定します。
|
void |
setPreferredWidth(int preferredWidth)
この列の適切な幅を
preferredWidth に設定します。 |
void |
setResizable(boolean isResizable)
この列がサイズ変更できるかどうかを設定します。
|
void |
setWidth(int width)
このメソッドを使用して
JTable の列の幅を設定しないでください。代わりに setPreferredWidth を使用します。 |
void |
sizeWidthToFit()
ヘッダーセルの幅に合うように、
TableColumn のサイズを変更します。 |
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
TableColumn が表示するモデルの列のインデックスです。ビュー内で列が移動しても、modelIndex は変わりません。protected Object identifier
JTable の描画機構が内部で使用するものではありません。識別子は、テーブル列にタグを付けたり、検索したりする方法の 1 つとして、TableColumn で設定できます。テーブルパッケージは、DefaultTableColumnModel の getColumnIndex() で使用される equals メソッドを除いて、それらの識別子オブジェクトでメソッドの変更や、呼び出しを行うことはありません。protected int width
protected int minWidth
protected int maxWidth
protected TableCellRenderer headerRenderer
protected Object headerValue
protected TableCellRenderer cellRenderer
protected TableCellEditor cellEditor
protected boolean isResizable
@Deprecated protected transient int resizedPostingDisableCount
public TableColumn()
null、およびエディタに null を使用するカバーメソッドです。このメソッドは、直列化に使用することを想定しています。public TableColumn(int modelIndex)
null、およびエディタに null を使用するカバーメソッドです。public TableColumn(int modelIndex,
int width)
null、およびエディタに null を使用するカバーメソッドです。public TableColumn(int modelIndex,
int width,
TableCellRenderer cellRenderer,
TableCellEditor cellEditor)
TableColumn のインスタンスを作成し、初期化します。すべての TableColumn コンストラクタはこれに処理を委譲します。width の値は、初期幅と適切な幅の両方に使用されます。width に負の値を指定した場合は、0 に設定されます。最小幅は 15 に設定されますが、初期幅が 15 より短い場合は初期幅に設定されます。
パラメータ cellRenderer または cellEditor が null の場合は、JTable の getDefaultRenderer メソッドまたは getDefaultEditor メソッドによって提供されたデフォルト値から、この列内のデータの型に基づいてデフォルトが提供されます。JTable の getCellRenderer メソッドをオーバーライドすることで、列中心の描画方法を回避できます。
modelIndex - テーブル内のこの列のデータを提供するモデル内の列のインデックス。ビュー内の列の順序が変更されても、モデルインデックスは変更されないwidth - この列の適切な幅および初期幅cellRenderer - この列内の値の描画に使用するオブジェクトcellEditor - この列内の値の編集に使用するオブジェクトgetMinWidth(), JTable.getDefaultRenderer(Class), JTable.getDefaultEditor(Class), JTable.getCellRenderer(int, int), JTable.getCellEditor(int, int)public void setModelIndex(int modelIndex)
TableColumn が表示するモデルの列のインデックスです。TableColumn がビュー内で移動しても、モデルインデックスは変わりません。modelIndex - 新しいモデルインデックスpublic int getModelIndex()
modelIndex プロパティーpublic void setIdentifier(Object identifier)
TableColumn の識別子を anIdentifier に設定します。
注: 識別子は JTable によっては使用されず、列の外部タグ付けおよび検索のためだけに使用されます。
identifier - この列の識別子getIdentifier()public Object getIdentifier()
identifier オブジェクトを返します。JTable は識別子を使用しません。識別子は、純粋に外部用として提供されています。identifier が null の場合、getIdentifier() はデフォルトで getHeaderValue を返します。identifier プロパティーsetIdentifier(java.lang.Object)public void setHeaderValue(Object headerValue)
headerRenderer の値として使用される Object を設定します。TableColumn が生成されるときのデフォルト headerValue は null です。headerValue - 新規の headerValuegetHeaderValue()public Object getHeaderValue()
Object を返します。headerValue プロパティーsetHeaderValue(java.lang.Object)public void setHeaderRenderer(TableCellRenderer headerRenderer)
TableColumn のヘッダーを描画するために使用される TableCellRenderer を、headerRenderer に設定します。
これは、ソートインジケータを描画するために使用されるヘッダーレンダリングです。ソートを使用し、レンダリングを指定する場合は、レンダリングでソートインジケータを描画する必要があります。
headerRenderer - 新規の headerRenderergetHeaderRenderer()public TableCellRenderer getHeaderRenderer()
TableColumn のヘッダーを描画するために使われる TableCellRenderer を返します。headerRenderer が null の場合、JTableHeader はその defaultRenderer を使用します。headerRenderer のデフォルト値は null です。headerRenderer プロパティーsetHeaderRenderer(javax.swing.table.TableCellRenderer), setHeaderValue(java.lang.Object), JTableHeader.getDefaultRenderer()public void setCellRenderer(TableCellRenderer cellRenderer)
JTable がこの列の個々の値を描画するために使う TableCellRenderer を設定します。cellRenderer - 新しい cellRenderergetCellRenderer()public TableCellRenderer getCellRenderer()
JTable がこの列の個々の値を描画するために使用する TableCellRenderer を返します。列の cellRenderer は、列の表示を制御するだけでなく、TableModel が供給する値オブジェクトを解釈するためにも使われます。cellRenderer が null の場合、JTable はその列のセルクラスに基づいたデフォルトのレンダリングを使用します。cellRenderer のデフォルト値は null です。public void setCellEditor(TableCellEditor cellEditor)
cellEditor - 新規の cellEditorgetCellEditor()public TableCellEditor getCellEditor()
JTable がこの列の個々の値を編集するために使用する TableCellEditor を返します。cellEditor が null の場合、JTable は列内のセルのクラスに基づいてデフォルトエディタを使用します。cellEditor のデフォルト値は null です。public void setWidth(int width)
JTable の列の幅を設定しないでください。代わりに setPreferredWidth を使用します。AWT のレイアウトマネージャーと同様に、テーブル自体がサイズを変更した場合や、列の適切な幅が変更された場合、JTable は必ず自動的に列の幅を調整します。したがって、プログラムで幅を設定しても、長くは影響しません。
このメソッドは、列の幅を width に設定します。width が幅の最小値または最大値を超える場合は、適切な制限値に調整されます。
width - 新しい幅getWidth(), setMinWidth(int), setMaxWidth(int), setPreferredWidth(int), JTable.doLayout()public int getWidth()
TableColumn の幅を返します。デフォルト幅は 75 です。width プロパティーsetWidth(int)public void setPreferredWidth(int preferredWidth)
preferredWidth に設定します。preferredWidth が幅の最小値または最大値を超える場合は、適切な制限値に調整されます。
preferredWidth から JTable (および JTableHeader) 内の列の幅を計算する方法については、JTable の doLayout メソッドを参照してください。
preferredWidth - 新規に設定された適切な幅getPreferredWidth(), JTable.doLayout()public int getPreferredWidth()
TableColumn の適切な幅を返します。デフォルトの適切な幅は 75 です。preferredWidth プロパティーsetPreferredWidth(int)public void setMinWidth(int minWidth)
TableColumn の最小幅を minWidth に設定し、必要に応じてこの新しい最小幅が 0 <= minWidth <= maxWidth になるように調整します。たとえば、minWidth 引数に負の値を指定した場合、このメソッドにより、minWidth プロパティーは 0 に設定されます。
width または preferredWidth プロパティーの値が新しい最小幅より小さい場合、このメソッドは新しい最小幅をプロパティー値として設定します。
minWidth - 新規の最小の幅getMinWidth(), setPreferredWidth(int), setMaxWidth(int)public int getMinWidth()
TableColumn の最小幅を返します。TableColumn の幅は、ユーザーによっても、プログラムによっても、この値より小さくできません。minWidth プロパティーsetMinWidth(int), TableColumn(int, int, TableCellRenderer, TableCellEditor)public void setMaxWidth(int maxWidth)
TableColumn の最大幅を maxWidth に設定します。maxWidth が最小幅より小さい場合は、最小幅に設定します。
width または preferredWidth プロパティーの値が新しい最大幅より大きい場合、このメソッドは新しい最大幅をプロパティー値として設定します。
maxWidth - 新規の最大の幅getMaxWidth(), setPreferredWidth(int), setMinWidth(int)public int getMaxWidth()
TableColumn の最大幅を返します。TableColumn の幅は、ユーザーによっても、プログラムによっても、この値より大きくできません。デフォルトの最大幅は Integer.MAX_VALUE です。maxWidth プロパティーsetMaxWidth(int)public void setResizable(boolean isResizable)
isResizable - サイズ変更できる場合は true、そうでない場合は falsegetResizable()public boolean getResizable()
TableColumn の幅を変更できる場合に true を返します。そうでない場合は false を返します。この設定に関係なく、プログラムによって幅を変更できます。デフォルトは true です。isResizable プロパティーsetResizable(boolean)public void sizeWidthToFit()
TableColumn のサイズを変更します。ヘッダーレンダリングがデフォルトの null の場合、このメソッドは何も行いません。そうでない場合、この列の最小幅、最大幅、適正幅は、ヘッダーレンダリングで送信された Component の最小サイズ、最大サイズ、適正サイズに設定されます。この TableColumn の一時的な「幅」のプロパティーは、適正幅に設定されます。このメソッドは、テーブルパッケージによって内部的に使われません。@Deprecated public void disableResizedPosting()
@Deprecated public void enableResizedPosting()
public void addPropertyChangeListener(PropertyChangeListener listener)
PropertyChangeListener を追加します。リスナーは、すべてのプロパティーに対して登録されます。
現在のコンポーネントの setFont、setBackground、または setForeground への明示的な呼び出しに応じて、PropertyChangeEvent がトリガーされます。現在のコンポーネントがフォアグラウンド、バックグラウンド、またはフォントをコンテナから継承している場合、継承されたプロパティーが変更されても、それに反応してイベントがトリガーされることはありません。
listener - 追加されるリスナーpublic void removePropertyChangeListener(PropertyChangeListener listener)
PropertyChangeListener をリスナーリストから削除します。これは、すべてのプロパティーで登録された PropertyChangeListener を削除します。listener - 削除されるリスナーpublic PropertyChangeListener[] getPropertyChangeListeners()
PropertyChangeListener の配列を返します。PropertyChangeListener。リスナーが追加されていない場合は空の配列protected TableCellRenderer createDefaultHeaderRenderer()
TableColumn コンストラクタはこのメソッドを呼び出しません。以前は TableColumn がこのメソッドを使用してデフォルトのヘッダーレンダリングを生成しました。Java 2 platform v1.3 では、デフォルトのヘッダーレンダリングは null です。現在は、JTableHeader が固有の共有デフォルトレンダリングを提供します。これは、JTable がセルレンダリングを提供するのと同様です。JTableHeader.createDefaultRenderer() バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.