- すべての実装されたインタフェース:
Serializable
TableColumn
はJTable
の列のすべての属性(幅、サイズ変更可能性、最小と最大の幅など)を表します。 さらに、TableColumn
は、レンダラおよびエディタに対して、この列内の値を表示および編集するために使用できるスロットを提供します。
また、列ごとではなくタイプごとにレンダラおよびエディタを指定することも可能です(JTable
クラスのsetDefaultRenderer
メソッドを参照)。 このデフォルトのメカニズムは、TableColumn
内のレンダラ(またはエディタ)がnull
のときにだけ使用されます。
TableColumn
は、JTable
の列とTableModel
の列のリンクを格納します。 modelIndex
は、この列のセルのデータ値が問い合わせられるTableModel
の列です。 ビュー内で列が移動しても、このmodelIndex
は変わりません。
ノート: 一部の実装では、すべてのTableColumnModel
が一意とみなされるため、同じTableColumn
インスタンスをTableColumnModel
に何度も追加しないことをお勧めします。 モデルから同じ列のデータを使用してTableColumn
を表示するには、同じmodelIndex
を使用して新しいインスタンスを作成してください。
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beans
パッケージに追加されました。 XMLEncoder
を参照してください。
-
フィールドのサマリー
修飾子と型フィールド説明static final String
Java 2プラットフォームv1.3では使用しません。protected TableCellEditor
列のデータ・セルを編集するために使われるエディタです。protected TableCellRenderer
列のデータ・セルを描画するために使われるレンダラです。static final String
Java 2プラットフォームv1.3では使用しません。static final String
Java 2プラットフォームv1.3では使用しません。static final String
Java 2プラットフォームv1.3では使用しません。protected TableCellRenderer
列のヘッダーを描画するために使われるレンダラです。protected Object
列のヘッダー値です。protected Object
このオブジェクトは、JTable
の描画機構によって内部的に使用されていません;TableColumn
に表列をタグ付けして配置するためのオプションとして識別子を設定することができます。protected boolean
ユーザーが列のサイズを変更できる場合はtrueです。デフォルトはtrueです。protected int
列の最大の幅です。protected int
列の最小の幅です。protected int
TableColumn
が表示するモデルの列のインデックスです。protected int
非推奨。Java 2プラットフォームv1.3。protected int
列の幅です。 -
コンストラクタのサマリー
コンストラクタ説明デフォルトのモデル・インデックスとして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
リスナー・リストにPropertyChangeListener
を追加します。protected TableCellRenderer
Java 2プラットフォームv1.3では、TableColumn
コンストラクタはこのメソッドを呼び出しません。void
非推奨。Java 2プラットフォームv1.3。void
非推奨。Java 2プラットフォームv1.3。JTable
がこの列の個々の値を編集するために使用するTableCellEditor
を返します。JTable
がこの列の個々の値を描画するために使用するTableCellRenderer
を返します。TableColumn
のヘッダーを描画するために使われるTableCellRenderer
を返します。ヘッダー・レンダラの値として使われるObject
を返します。この列のidentifier
オブジェクトを返します。int
TableColumn
の最大幅を返します。int
TableColumn
の最小幅を返します。int
この列のモデル・インデックスを返します。int
TableColumn
の適切な幅を返します。addPropertyChangeListener()を使用してこのTableColumnに追加されているすべてのPropertyChangeListener
の配列を返します。boolean
ユーザーがTableColumn
の幅を変更できる場合にtrueを返します。そうでない場合はfalseを返します。int
getWidth()
TableColumn
の幅を返します。void
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
ヘッダー・セルの幅に合うように、TableColumn
のサイズを変更します。
-
フィールド詳細
-
COLUMN_WIDTH_PROPERTY
public static final String COLUMN_WIDTH_PROPERTYJava 2プラットフォームv1.3で廃止されました。 プロパティを指定するにはリテラル文字列を使用してください。- 関連項目:
-
HEADER_VALUE_PROPERTY
public static final String HEADER_VALUE_PROPERTYJava 2プラットフォームv1.3で廃止されました。 プロパティを指定するにはリテラル文字列を使用してください。- 関連項目:
-
HEADER_RENDERER_PROPERTY
public static final String HEADER_RENDERER_PROPERTYJava 2プラットフォームv1.3で廃止されました。 プロパティを指定するにはリテラル文字列を使用してください。- 関連項目:
-
CELL_RENDERER_PROPERTY
public static final String CELL_RENDERER_PROPERTYJava 2プラットフォームv1.3で廃止されました。 プロパティを指定するにはリテラル文字列を使用してください。- 関連項目:
-
modelIndex
protected int modelIndexTableColumn
が表示するモデルの列のインデックスです。 ビュー内で列が移動しても、modelIndex
は変わりません。 -
identifier
protected Object identifierこのオブジェクトは、JTable
の描画機構によって内部的に使用されていません;TableColumn
に表列をタグ付けして配置するためのオプションとして識別子を設定することができます。 テーブル・パッケージでは、DefaultTableColumnModel
のgetColumnIndex()
メソッドで使用されるequals
メソッドを除いて、それらの識別子オブジェクトでメソッドの変更や呼出しを行うことはありません。 -
width
protected int width列の幅です。 -
minWidth
protected int minWidth列の最小の幅です。 -
maxWidth
protected int maxWidth列の最大の幅です。 -
headerRenderer
protected TableCellRenderer headerRenderer列のヘッダーを描画するために使われるレンダラです。 -
headerValue
protected Object headerValue列のヘッダー値です。 -
cellRenderer
protected TableCellRenderer cellRenderer列のデータ・セルを描画するために使われるレンダラです。 -
cellEditor
protected TableCellEditor cellEditor列のデータ・セルを編集するために使われるエディタです。 -
isResizable
protected boolean isResizableユーザーが列のサイズを変更できる場合はtrueです。デフォルトはtrueです。 -
resizedPostingDisableCount
@Deprecated protected transient int resizedPostingDisableCount非推奨。Java 2プラットフォームv1.3。このフィールドは旧リリースでは使用されておらず、現在のところ将来サポートする計画もありません。
-
-
コンストラクタの詳細
-
TableColumn
public TableColumn()デフォルトのモデル・インデックスとして0、デフォルトの幅として75、レンダラにnull
、およびエディタにnull
を使用するカバー・メソッドです。 このメソッドは、直列化に使用することを想定しています。 -
TableColumn
public TableColumn(int modelIndex) デフォルトの幅として75、レンダラにnull
、およびエディタにnull
を使用するカバー・メソッドです。- パラメータ:
modelIndex
- テーブル内のこの列のデータを提供するモデル内の列のインデックス。ビュー内の列の順序が変更されても、モデル・インデックスは変更されない- 関連項目:
-
TableColumn
public TableColumn(int modelIndex, int width) レンダラにnull
、およびエディタにnull
を使用するカバー・メソッドです。- パラメータ:
modelIndex
- テーブル内のこの列のデータを提供するモデル内の列のインデックス。ビュー内の列の順序が変更されても、モデル・インデックスは変更されないwidth
- この列の適切な幅および初期幅- 関連項目:
-
TableColumn
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
- この列内の値の編集に使用するオブジェクト- 関連項目:
-
-
メソッドの詳細
-
setModelIndex
@BeanProperty(description="The model index.") public void setModelIndex(int modelIndex) この列のモデル・インデックスを設定します。 モデル・インデックスは、このTableColumn
が表示するモデルの列のインデックスです。TableColumn
がビュー内で移動しても、モデル・インデックスは変わりません。- パラメータ:
modelIndex
- 新しいモデル・インデックス
-
getModelIndex
public int getModelIndex()この列のモデル・インデックスを返します。- 戻り値:
modelIndex
プロパティ
-
setIdentifier
@BeanProperty(description="A unique identifier for this column.") public void setIdentifier(Object identifier) TableColumn
の識別子をanIdentifier
に設定します。ノート: 識別子は
JTable
によっては使用されず、列の外部タグ付けおよび検索のためだけに使用されます。- パラメータ:
identifier
- この列の識別子- 関連項目:
-
getIdentifier
public Object getIdentifier()この列のidentifier
オブジェクトを返します。 識別子はJTable
によっては使用されず、純粋に外部用として提供されています。identifier
がnull
の場合、getIdentifier()
はデフォルトとしてgetHeaderValue
を返します。- 戻り値:
identifier
プロパティ- 関連項目:
-
setHeaderValue
@BeanProperty(description="The text to be used by the header renderer.") public void setHeaderValue(Object headerValue) 文字列表現がheaderRenderer
の値として使用されるObject
を設定します。TableColumn
が生成されるときのデフォルトheaderValue
はnull
です。- パラメータ:
headerValue
- 新規のheaderValue- 関連項目:
-
getHeaderValue
public Object getHeaderValue()ヘッダー・レンダラの値として使われるObject
を返します。- 戻り値:
headerValue
プロパティ- 関連項目:
-
setHeaderRenderer
@BeanProperty(description="The header renderer.") public void setHeaderRenderer(TableCellRenderer headerRenderer) TableColumn
のヘッダーを描画するために使用されるTableCellRenderer
を、headerRenderer
に設定します。これは、ソート・インジケータを描画するために使用されるヘッダー・レンダラです。 ソートを使用し、レンダラを指定する場合は、レンダラでソート・インジケータを描画する必要があります。
- パラメータ:
headerRenderer
- 新規のheaderRenderer- 関連項目:
-
getHeaderRenderer
public TableCellRenderer getHeaderRenderer()TableColumn
のヘッダーを描画するために使われるTableCellRenderer
を返します。headerRenderer
がnull
の場合、JTableHeader
はそのdefaultRenderer
を使用します。headerRenderer
のデフォルト値はnull
です。- 戻り値:
headerRenderer
プロパティ- 関連項目:
-
setCellRenderer
@BeanProperty(description="The renderer to use for cell values.") public void setCellRenderer(TableCellRenderer cellRenderer) JTable
がこの列の個々の値を描画するために使うTableCellRenderer
を設定します。- パラメータ:
cellRenderer
- 新しいcellRenderer- 関連項目:
-
getCellRenderer
public TableCellRenderer getCellRenderer()JTable
がこの列の個々の値を描画するために使用するTableCellRenderer
を返します。 列のcellRenderer
は、列の表示を制御するだけでなく、TableModel
が供給する値オブジェクトを解釈するためにも使われます。cellRenderer
がnull
の場合、JTable
はその列のセル・クラスに基づいたデフォルトのレンダラを使用します。cellRenderer
のデフォルト値はnull
です。 -
setCellEditor
@BeanProperty(description="The editor to use for cell values.") public void setCellEditor(TableCellEditor cellEditor) この列のセルを編集するときに使用できるようにエディタを設定します。- パラメータ:
cellEditor
- 新規のcellEditor- 関連項目:
-
getCellEditor
public TableCellEditor getCellEditor()JTable
がこの列の個々の値を編集するために使用するTableCellEditor
を返します。cellEditor
がnull
の場合、JTable
は列内のセルのクラスに基づいてデフォルト・エディタを使用します。cellEditor
のデフォルト値はnull
です。 -
setWidth
@BeanProperty(description="The width of the column.") public void setWidth(int width) このメソッドを使用してJTable
の列の幅を設定しないでください。代わりにsetPreferredWidth
を使用します。 AWTのレイアウト・マネージャと同様に、テーブル自体がサイズを変更した場合や列の優先幅が変更された場合、JTable
は必ず自動的に列の幅を調整します。 したがって、プログラムで幅を設定しても、長くは影響しません。このメソッドは、列の幅を
width
に設定します。width
が幅の最小値または最大値を超える場合は、適切な制限値に調整されます。- パラメータ:
width
- 新しい幅- 関連項目:
-
getWidth
public int getWidth()TableColumn
の幅を返します。 デフォルト幅は75です。- 戻り値:
width
プロパティ- 関連項目:
-
setPreferredWidth
@BeanProperty(description="The preferred width of the column.") public void setPreferredWidth(int preferredWidth) この列の適切な幅をpreferredWidth
に設定します。preferredWidth
が幅の最小値または最大値を超える場合は、適切な制限値に調整されます。preferredWidth
からJTable
(およびJTableHeader
)内の列の幅を計算する方法については、JTable
のdoLayout
メソッドを参照してください。- パラメータ:
preferredWidth
- 新規に設定された適切な幅- 関連項目:
-
getPreferredWidth
public int getPreferredWidth()TableColumn
の適切な幅を返します。 デフォルトの適切な幅は75です。- 戻り値:
preferredWidth
プロパティ- 関連項目:
-
setMinWidth
@BeanProperty(description="The minimum width of the column.") public void setMinWidth(int minWidth) TableColumn
の最小幅をminWidth
に設定し、必要に応じてこの新しい最小幅が0 <=minWidth
<=maxWidth
になるように調整します。 たとえば、minWidth
引数に負の値を指定した場合、このメソッドにより、minWidth
プロパティは0に設定されます。width
またはpreferredWidth
プロパティの値が新しい最小幅より小さい場合、このメソッドは新しい最小幅をプロパティ値として設定します。- パラメータ:
minWidth
- 新規の最小の幅- 関連項目:
-
getMinWidth
public int getMinWidth()TableColumn
の最小幅を返します。TableColumn
の幅は、ユーザーによっても、プログラムによっても、この値より小さくできません。- 戻り値:
minWidth
プロパティ- 関連項目:
-
setMaxWidth
@BeanProperty(description="The maximum width of the column.") public void setMaxWidth(int maxWidth) TableColumn
の最大幅をmaxWidth
に設定します。maxWidth
が最小幅より小さい場合は、最小幅に設定します。width
またはpreferredWidth
プロパティの値が新しい最大幅より大きい場合、このメソッドは新しい最大幅をプロパティ値として設定します。- パラメータ:
maxWidth
- 新規の最大の幅- 関連項目:
-
getMaxWidth
public int getMaxWidth()TableColumn
の最大幅を返します。TableColumn
の幅は、ユーザーによっても、プログラムによっても、この値より大きくできません。 デフォルトの最大幅はInteger.MAX_VALUEです。- 戻り値:
maxWidth
プロパティ- 関連項目:
-
setResizable
@BeanProperty(description="Whether or not this column can be resized.") public void setResizable(boolean isResizable) この列がサイズ変更できるかどうかを設定します。- パラメータ:
isResizable
- サイズ変更できる場合はtrue、そうでない場合はfalse- 関連項目:
-
getResizable
public boolean getResizable()ユーザーがTableColumn
の幅を変更できる場合にtrueを返します。そうでない場合はfalseを返します。 この設定に関係なく、プログラムによって幅を変更できます。 デフォルトはtrueです。- 戻り値:
isResizable
プロパティ- 関連項目:
-
sizeWidthToFit
public void sizeWidthToFit()ヘッダー・セルの幅に合うように、TableColumn
のサイズを変更します。 ヘッダー・レンダラがデフォルトのnull
の場合、このメソッドは何も行いません。 そうでない場合、この列の最小幅、最大幅、適正幅は、ヘッダー・レンダラで送信されたComponentの最小サイズ、最大サイズ、適正サイズに設定されます。 このTableColumnの一時的な「幅」のプロパティは、適正幅に設定されます。 このメソッドは、テーブル・パッケージによって内部的に使われません。- 関連項目:
-
disableResizedPosting
@Deprecated public void disableResizedPosting()非推奨。Java 2プラットフォームv1.3。このフィールドは旧リリースでは使用されておらず、現在のところ将来サポートする計画もありません。 -
enableResizedPosting
@Deprecated public void enableResizedPosting()非推奨。Java 2プラットフォームv1.3。このフィールドは旧リリースでは使用されておらず、現在のところ将来サポートする計画もありません。 -
addPropertyChangeListener
public void addPropertyChangeListener(PropertyChangeListener listener) リスナー・リストにPropertyChangeListener
を追加します。 このリスナーは、次のような、このクラスのすべてのバウンド・プロパティに登録されます。- このTableColumnのmodelIndex ("modelIndex")
- このTableColumn識別子("identifier")
- このTableColumnヘッダー値("headerValue")
- このTableColumnヘッダー・レンダラ("headerRenderer")
- このTableColumnセル・レンダラ("cellRenderer")
- このTableColumnセル・エディタ("cellEditor")
- このTableColumnの幅("width")
- このTableColumnの優先幅("preferredWidth")
- このTableColumnの最小幅("minWidth")
- このTableColumnの最大幅("maxWidth")
- このTableColumnのサイズ変更可能な状態("isResizable")
- パラメータ:
listener
- 追加されるリスナー- 関連項目:
-
removePropertyChangeListener
public void removePropertyChangeListener(PropertyChangeListener listener) PropertyChangeListener
をリスナー・リストから削除します。 これは、すべてのプロパティで登録されたPropertyChangeListener
を削除します。- パラメータ:
listener
- 削除されるリスナー
-
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners()addPropertyChangeListener()を使用してこのTableColumnに追加されているすべてのPropertyChangeListener
の配列を返します。- 戻り値:
- 追加されたすべての
PropertyChangeListener
。リスナーが追加されていない場合は空の配列 - 導入されたバージョン:
- 1.4
-
createDefaultHeaderRenderer
protected TableCellRenderer createDefaultHeaderRenderer()Java 2プラットフォームv1.3では、TableColumn
コンストラクタはこのメソッドを呼び出しません。 以前はTableColumn
がこのメソッドを使用してデフォルトのヘッダー・レンダラを生成していました。 Java 2 platform v1.3以降、デフォルトのヘッダー・レンダラはnull
です。 これでJTableHeader
は独自の共有デフォルト・レンダラを提供するようになりました。これは、JTable
がセル・レンダラを提供するのと同様です。- 戻り値:
- デフォルトのヘッダー・レンダラ
- 関連項目:
-