public class DefaultTableColumnModel extends Object implements TableColumnModel, PropertyChangeListener, ListSelectionListener, Serializable
JTableの標準の列ハンドラです。
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースとの互換性がなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4以降、すべてのJavaBeans™用の長期間の格納サポートがjava.beansパッケージに追加されています。 XMLEncoderを参照してください。
JTable| 修飾子と型 | フィールド | 説明 |
|---|---|---|
protected ChangeEvent |
changeEvent |
変更イベントです(1つだけ必要)。
|
protected int |
columnMargin |
各列の間の幅マージンです。
|
protected boolean |
columnSelectionAllowed |
この列モデルで許可される列の選択です。
|
protected EventListenerList |
listenerList |
TableColumnModelListenerのリストです。
|
protected ListSelectionModel |
selectionModel |
列選択の履歴を記録するためのモデルです。
|
protected Vector<TableColumn> |
tableColumns |
このモデルのTableColumnオブジェクトの配列です。
|
protected int |
totalColumnWidth |
すべての列の幅を組み合わせた合計のローカル・キャッシュです。
|
| コンストラクタ | 説明 |
|---|---|
DefaultTableColumnModel() |
デフォルトのテーブル列モデルを作成します。
|
| 修飾子と型 | メソッド | 説明 |
|---|---|---|
void |
addColumn(TableColumn aColumn) |
tableColumns配列の最後にaColumnを追加します。 |
void |
addColumnModelListener(TableColumnModelListener x) |
テーブル列モデル・イベント用のリスナーを追加します。
|
protected ListSelectionModel |
createSelectionModel() |
新規のリスト選択のデフォルト・モデルを作成します。
|
protected void |
fireColumnAdded(TableColumnModelEvent e) |
このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
|
protected void |
fireColumnMarginChanged() |
このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
|
protected void |
fireColumnMoved(TableColumnModelEvent e) |
このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
|
protected void |
fireColumnRemoved(TableColumnModelEvent e) |
このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
|
protected void |
fireColumnSelectionChanged(ListSelectionEvent e) |
このイベント・タイプの通知対象として登録されているすべてのリスナーに通知します。
|
TableColumn |
getColumn(int columnIndex) |
columnIndexにある列のTableColumnオブジェクトを返します。 |
int |
getColumnCount() |
この
tableColumns配列の列数を返します。 |
int |
getColumnIndex(Object identifier) |
equalsを使って比較したときに識別子がidentifierと等しいtableColumns配列内の最初の列のインデックスを返します。 |
int |
getColumnIndexAtX(int x) |
x位置にある列のインデックスを返します。このポイントが列の範囲外にある場合は -1を返します。 |
int |
getColumnMargin() |
TableColumnの幅マージンを返します。 |
TableColumnModelListener[] |
getColumnModelListeners() |
このモデルに登録された、すべての列モデル・リスナーからなる配列を返します。
|
Enumeration<TableColumn> |
getColumns() |
モデルのすべての列の
Enumerationを返します。 |
boolean |
getColumnSelectionAllowed() |
列の選択が許可されている場合はtrue、そうでない場合はfalseを返します。
|
<T extends EventListener> |
getListeners(Class<T> listenerType) |
このモデルに
FooListenerとして現在登録されているすべてのオブジェクトの配列を返します。 |
int |
getSelectedColumnCount() |
選択されている列の数を返します。
|
int[] |
getSelectedColumns() |
選択された列の配列を返します。
|
ListSelectionModel |
getSelectionModel() |
列選択状態を維持するのに使用する
ListSelectionModelを返します。 |
int |
getTotalColumnWidth() |
すべての列の幅を組み合わせた合計を返します。
|
void |
moveColumn(int columnIndex, int newIndex) |
columnIndexにある列およびヘッダーをnewIndexに移動します。 |
void |
propertyChange(PropertyChangeEvent evt) |
プロパティ変更リスナー変更メソッドです。
|
protected void |
recalcWidthCache() |
すべての列の幅を組み合わせた合計を再計算します。
|
void |
removeColumn(TableColumn column) |
tableColumns配列からcolumnを削除します。 |
void |
removeColumnModelListener(TableColumnModelListener x) |
テーブル列モデル・イベント用のリスナーを削除します。
|
void |
setColumnMargin(int newMargin) |
列マージンを
newMarginに設定します。 |
void |
setColumnSelectionAllowed(boolean flag) |
列の選択が許可されているかどうかを設定します。
|
void |
setSelectionModel(ListSelectionModel newModel) |
この
TableColumnModelの選択モデルをnewModelに設定し、新しい選択モデルからのリスナー通知を受信するように登録します。 |
void |
valueChanged(ListSelectionEvent e) |
ListSelectionListenerは、列の選択が変更されると、ListSelectionEventsを転送します。 |
protected Vector<TableColumn> tableColumns
protected ListSelectionModel selectionModel
protected int columnMargin
protected EventListenerList listenerList
protected transient ChangeEvent changeEvent
protected boolean columnSelectionAllowed
protected int totalColumnWidth
public void addColumn(TableColumn aColumn)
tableColumns配列の最後にaColumnを追加します。 また、このメソッドはそのリスナーにcolumnAddedイベントを送ります。 addColumn、インタフェースTableColumnModelaColumn - 追加されるTableColumnIllegalArgumentException - aColumnがnullである場合removeColumn(javax.swing.table.TableColumn)public void removeColumn(TableColumn column)
tableColumns配列からcolumnを削除します。 columnがテーブルの列リストにない場合、このメソッドは何も行いません。ヘッダーとテーブルの両方のビューをサイズ変更するためにtileが呼び出されます。 また、このメソッドはそのリスナーにcolumnRemovedイベントを送ります。 removeColumn、インタフェースTableColumnModelcolumn - 削除するTableColumnaddColumn(javax.swing.table.TableColumn)public void moveColumn(int columnIndex,
int newIndex)
columnIndexにある列およびヘッダーをnewIndexに移動します。 移動前にcolumnIndexにあった列はnewIndexに置かれます。 この場所を作るため、これまでnewIndexにあった列は、左または右に移動します。 columnIndexとnewIndexが同じ場合、列は移動しません。 また、このメソッドはそのリスナーにcolumnMovedイベントを送ります。 moveColumn、インタフェースTableColumnModelcolumnIndex - 移動する列のインデックスnewIndex - 列を移動する新規インデックスIllegalArgumentException - columnまたはnewIndexが有効な範囲にない場合public void setColumnMargin(int newMargin)
newMarginに設定します。 また、このメソッドはそのリスナーにcolumnMarginChangedイベントを送ります。 setColumnMargin、インタフェースTableColumnModelnewMargin - ピクセル単位の新規のマージン幅getColumnMargin(), getTotalColumnWidth()public int getColumnCount()
tableColumns配列の列数を返します。getColumnCount、インタフェースTableColumnModeltableColumns配列の列数getColumns()public Enumeration<TableColumn> getColumns()
Enumerationを返します。getColumns、インタフェースTableColumnModelEnumerationpublic int getColumnIndex(Object identifier)
equalsを使って比較したときに識別子がidentifierと等しいtableColumns配列内の最初の列のインデックスを返します。getColumnIndex、インタフェースTableColumnModelidentifier - 識別子オブジェクトidentifierと等しいtableColumns配列内の最初の列のインデックスIllegalArgumentException - identifierがnullの場合、またはこのidentifierを持っているTableColumnがない場合getColumn(int)public TableColumn getColumn(int columnIndex)
columnIndexにある列のTableColumnオブジェクトを返します。getColumn、インタフェースTableColumnModelcolumnIndex - 要求する列のインデックスcolumnIndexにある列のTableColumnオブジェクトpublic int getColumnMargin()
TableColumnの幅マージンを返します。 デフォルトのcolumnMarginは1です。 getColumnMargin、インタフェースTableColumnModelTableColumnの最大幅setColumnMargin(int)public int getColumnIndexAtX(int x)
x位置にある列のインデックスを返します。このポイントが列の範囲外にある場合は -1を返します。 Swingの分離可能なモデル・アーキテクチャに沿って、TableColumnModelはテーブル列が実際に画面上でどのように表示されるかを認識しません。 列の視覚的表現は、このモデル(通常はJTable)を使用するビューまたはコントローラ・オブジェクトによって決まります。 ビューとコントローラは、必ずしも左から右という順に列を表示する必要はありません。 たとえば、ロケール・プリファレンスに対応させるために右から左へ列を表示したり、ユーザーの要求に従って一部の列を隠したりといったことが可能です。 このモデルでは、画面上で列がどのように配置されるかがわからないため、指定されたxPositionは2Dグラフィックス空間の座標とはみなされません。 代わりに、そのモデルの最初の列から始まる幅とみなされます。 2D空間での指定されたX座標の列インデックスが必要な場合は、代わりにJTable.columnAtPointを使用できます。 getColumnIndexAtX、インタフェースTableColumnModelx - 対象の水平方向の位置JTable.columnAtPoint(java.awt.Point)public int getTotalColumnWidth()
getTotalColumnWidth、インタフェースTableColumnModeltotalColumnWidthプロパティpublic void setSelectionModel(ListSelectionModel newModel)
TableColumnModelの選択モデルをnewModelに設定し、新しい選択モデルからのリスナー通知を受信するように登録します。 newModelがnullの場合、例外がスローされます。 setSelectionModel、インタフェースTableColumnModelnewModel - 新しい選択モデルIllegalArgumentException - newModelがnullである場合getSelectionModel()public ListSelectionModel getSelectionModel()
ListSelectionModelを返します。getSelectionModel、インタフェースTableColumnModelnull。 setSelectionModel(javax.swing.ListSelectionModel)public void setColumnSelectionAllowed(boolean flag)
setColumnSelectionAllowed、インタフェースTableColumnModelflag - 列の選択が許可されている場合はtrue、そうでない場合はfalseTableColumnModel.getColumnSelectionAllowed()public boolean getColumnSelectionAllowed()
getColumnSelectionAllowed、インタフェースTableColumnModelcolumnSelectionAllowedプロパティTableColumnModel.setColumnSelectionAllowed(boolean)public int[] getSelectedColumns()
selectionModelがnullの場合、空の配列が返されます。 getSelectedColumns、インタフェースTableColumnModelselectionModelがnullの場合は空の配列public int getSelectedColumnCount()
getSelectedColumnCount、インタフェースTableColumnModelpublic void addColumnModelListener(TableColumnModelListener x)
addColumnModelListener、インタフェースTableColumnModelx - TableColumnModelListenerオブジェクトpublic void removeColumnModelListener(TableColumnModelListener x)
removeColumnModelListener、インタフェースTableColumnModelx - TableColumnModelListenerオブジェクトpublic TableColumnModelListener[] getColumnModelListeners()
ColumnModelListener。列モデル・リスナーが現在登録されていない場合は空の配列addColumnModelListener(javax.swing.event.TableColumnModelListener), removeColumnModelListener(javax.swing.event.TableColumnModelListener)protected void fireColumnAdded(TableColumnModelEvent e)
e - 受け取ったイベントEventListenerListprotected void fireColumnRemoved(TableColumnModelEvent e)
e - 受け取ったイベントEventListenerListprotected void fireColumnMoved(TableColumnModelEvent e)
e - 受け取ったイベントEventListenerListprotected void fireColumnSelectionChanged(ListSelectionEvent e)
e - 受け取ったイベントEventListenerListprotected void fireColumnMarginChanged()
EventListenerListpublic <T extends EventListener> T[] getListeners(Class<T> listenerType)
FooListenerとして現在登録されているすべてのオブジェクトの配列を返します。 FooListenerは、addFooListenerメソッドを使用して登録されます。
FooListener.classなどのクラス・リテラルを使用してlistenerType引数を指定できます。 たとえば、次のコードを使用して、その列モデル・リスナーのDefaultTableColumnModel mを照会できます。
ColumnModelListener[] cmls = (ColumnModelListener[])(m.getListeners(ColumnModelListener.class));このようなリスナーがない場合は空の配列を返します。
listenerType - 要求されるリスナーの型; java.util.EventListenerの下位インタフェースを指定FooListenerとして登録されているすべてのオブジェクトの配列。またはこのようなリスナーが登録されていない場合は空の配列ClassCastException - listenerTypeで、java.util.EventListenerを実装するクラスまたはインタフェースが指定されなかった場合getColumnModelListeners()public void propertyChange(PropertyChangeEvent evt)
propertyChange、インタフェースPropertyChangeListenerevt - PropertyChangeEventpublic void valueChanged(ListSelectionEvent e)
ListSelectionListenerは、列の選択が変更されると、ListSelectionEventsを転送します。valueChanged、インタフェースListSelectionListenere - 変更イベントprotected ListSelectionModel createSelectionModel()
protected void recalcWidthCache()
totalColumnWidthプロパティを更新します。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。