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