JavaTM 2 Platform
Standard Ed. 5.0

javax.swing.table
クラス DefaultTableColumnModel

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 に適しています。JDK バージョン 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>
T[]
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 は、列の選択を変更するときに、ListSelectionEvent を転送します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

tableColumns

protected Vector<TableColumn> tableColumns
このモデルの TableColumn オブジェクトの配列です。


selectionModel

protected ListSelectionModel selectionModel
列選択の履歴を記録するためのモデルです。


columnMargin

protected int columnMargin
各列の間の幅マージンです。


listenerList

protected EventListenerList listenerList
TableColumnModelListener のリストです。


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 イベントを送ります。

定義:
インタフェース TableColumnModel 内の addColumn
パラメータ:
aColumn - 追加される TableColumn
例外:
IllegalArgumentException - aColumnnull の場合
関連項目:
removeColumn(javax.swing.table.TableColumn)

removeColumn

public void removeColumn(TableColumn column)
tableColumns 配列から column を削除します。column がテーブルの列リストにない場合、このメソッドは処理をしません。tile は、ヘッダおよびテーブルのビューをサイズ変更するために呼び出されます。また、このメソッドはそのリスナーに columnRemoved イベントを送ります。

定義:
インタフェース TableColumnModel 内の removeColumn
パラメータ:
column - 削除される TableColumn
関連項目:
addColumn(javax.swing.table.TableColumn)

moveColumn

public void moveColumn(int columnIndex,
                       int newIndex)
columnIndex にある列およびヘッダを newIndex に移動します。移動前は columnIndex にあった列は newIndex に置かれます。この場所を作るため、newIndex にこれまであった列は、左または右に移動します。columnIndexnewIndex が同じ場合、列は移動しません。また、このメソッドはそのリスナーに columnMoved イベントを送ります。

定義:
インタフェース TableColumnModel 内の moveColumn
パラメータ:
columnIndex - 移動する列のインデックス
newIndex - 列を移動する新規インデックス
例外:
IllegalArgumentException - column または newIndex が有効な範囲外の場合

setColumnMargin

public void setColumnMargin(int newMargin)
列マージンを newMargin に設定します。また、このメソッドはそのリスナーに columnMarginChanged イベントを送ります。

定義:
インタフェース TableColumnModel 内の setColumnMargin
パラメータ:
newMargin - ピクセル単位の新規のマージン幅
関連項目:
getColumnMargin(), getTotalColumnWidth()

getColumnCount

public int getColumnCount()
この tableColumns 配列の列数を返します。

定義:
インタフェース TableColumnModel 内の getColumnCount
戻り値:
この tableColumns 配列の列数
関連項目:
getColumns()

getColumns

public Enumeration<TableColumn> getColumns()
モデルのすべての列の Enumeration を返します。

定義:
インタフェース TableColumnModel 内の getColumns
戻り値:
モデルの列の Enumeration

getColumnIndex

public int getColumnIndex(Object identifier)
equals を使用して比較したときに識別子が identifier と等しい、tableColumns 配列にある最初の列のインデックスを返します。

定義:
インタフェース TableColumnModel 内の getColumnIndex
パラメータ:
identifier - 識別子オブジェクト
戻り値:
識別子が identifier と等しい tableColumns 配列にある、最初の列のインデックス
例外:
IllegalArgumentException - identifiernull の場合、またはこの identifier を持つ TableColumn がない場合
関連項目:
getColumn(int)

getColumn

public TableColumn getColumn(int columnIndex)
columnIndex にある列の TableColumn オブジェクトを返します。

定義:
インタフェース TableColumnModel 内の getColumn
パラメータ:
columnIndex - 要求する列のインデックス
戻り値:
columnIndex にある列の TableColumn オブジェクト

getColumnMargin

public int getColumnMargin()
TableColumn の幅マージンを返します。デフォルトの columnMargin は 1 です。

定義:
インタフェース TableColumnModel 内の getColumnMargin
戻り値:
TableColumn の最大幅
関連項目:
setColumnMargin(int)

getColumnIndexAtX

public int getColumnIndexAtX(int x)
x 位置を表す列のインデックス、またはこの位置が列の範囲外にある場合は -1 を返します。 Swing の分離可能なモデルアーキテクチャを使用している場合、TableColumnModel はテーブル列が実際に画面上でどのように表示されるかを認識しません。列の視覚的表現は、このモデル (通常は JTable) を使用するビューとコントローラオブジェクトによって決まります。ビューとコントローラは、必ずしも左から右という順に列を表示する必要はありません。たとえば、ロケールの設定に対応させるために右から左へ列を表示したり、ユーザの要求に従って一部の列を隠したりといったことが可能です。モデルでは、画面上で列がどのように配置されるかがわからないため、指定された xPosition は、2D グラフィックス空間の座標とみなされません。代わりに、モデルの最初の列から始まる幅とみなされます。2D 空間で指定された X 座標の列インデックスが必要な場合は、xPosition ではなく JTable.columnAtPoint を使用します。

定義:
インタフェース TableColumnModel 内の getColumnIndexAtX
パラメータ:
x - 対象の水平方向の位置
戻り値:
列のインデックス。列が見つからない場合は -1
関連項目:
JTable.columnAtPoint(java.awt.Point)

getTotalColumnWidth

public int getTotalColumnWidth()
すべての列の幅を組合わせた合計を返します。

定義:
インタフェース TableColumnModel 内の getTotalColumnWidth
戻り値:
totalColumnWidth プロパティ

setSelectionModel

public void setSelectionModel(ListSelectionModel newModel)
この TableColumnModel の選択モデルを newModel に設定し、新しい選択モデルからのリスナー通知を登録します。newModelnull の場合、例外がスローされます。

定義:
インタフェース TableColumnModel 内の setSelectionModel
パラメータ:
newModel - 新しい選択モデル
例外:
IllegalArgumentException - newModelnull の場合
関連項目:
getSelectionModel()

getSelectionModel

public ListSelectionModel getSelectionModel()
列の選択状態を維持するために使用される ListSelectionModel を返します。

定義:
インタフェース TableColumnModel 内の getSelectionModel
戻り値:
列の選択状態を提供するオブジェクト。行の選択が許可されていない場合は null
関連項目:
setSelectionModel(javax.swing.ListSelectionModel)

setColumnSelectionAllowed

public void setColumnSelectionAllowed(boolean flag)
列の選択が許可されているかどうかを設定します。デフォルトは false です。

定義:
インタフェース TableColumnModel 内の setColumnSelectionAllowed
パラメータ:
flag - 列の選択が許可されている場合は true、そうでない場合は false
関連項目:
TableColumnModel.getColumnSelectionAllowed()

getColumnSelectionAllowed

public boolean getColumnSelectionAllowed()
列の選択が許可されている場合は true、そうでない場合は false を返します。デフォルトは false です。

定義:
インタフェース TableColumnModel 内の getColumnSelectionAllowed
戻り値:
columnSelectionAllowed プロパティ
関連項目:
TableColumnModel.setColumnSelectionAllowed(boolean)

getSelectedColumns

public int[] getSelectedColumns()
選択された列の配列を返します。selectionModelnull の場合、空の配列が返されます。

定義:
インタフェース TableColumnModel 内の getSelectedColumns
戻り値:
選択された列の配列。何も選択されていないか、selectionModelnull の場合は空の配列

getSelectedColumnCount

public int getSelectedColumnCount()
選択されている列の数を返します。

定義:
インタフェース TableColumnModel 内の getSelectedColumnCount
戻り値:
選択されている列の数

addColumnModelListener

public void addColumnModelListener(TableColumnModelListener x)
テーブル列モデルイベント用のリスナーを追加します。

定義:
インタフェース TableColumnModel 内の addColumnModelListener
パラメータ:
x - TableColumnModelListener オブジェクト

removeColumnModelListener

public void removeColumnModelListener(TableColumnModelListener x)
テーブル列モデルイベント用のリスナーを削除します。

定義:
インタフェース TableColumnModel 内の removeColumnModelListener
パラメータ:
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 として現在登録されているすべてのオブジェクトの配列を返します。この FooListeneraddFooListener メソッドで登録されたものです。

FooListener.class などのクラスリテラルを使用して、listenerType 引数を指定できます。たとえば以下のコードを使用して、DefaultTableColumnModel m を、その列モデルリスナーに照会できます。

ColumnModelListener[] cmls = (ColumnModelListener[])(m.getListeners(ColumnModelListener.class));
このようなリスナーがない場合は空の配列を返します。

パラメータ:
listenerType - 要求されるリスナーの型。java.util.EventListener の下位インタフェースを指定
戻り値:
このモデルに FooListener として登録されているすべてのオブジェクトの配列。リスナーが登録されていない場合は空の配列を返す
例外:
ClassCastException - listenerTypejava.util.EventListener を実装するクラスまたはインタフェースを指定しない場合
導入されたバージョン:
1.3
関連項目:
getColumnModelListeners()

propertyChange

public void propertyChange(PropertyChangeEvent evt)
プロパティ変更リスナー変更メソッドです。指定された列幅または最適な列幅への変更を追跡する場合に使用します。

定義:
インタフェース PropertyChangeListener 内の propertyChange
パラメータ:
evt - PropertyChangeEvent

valueChanged

public void valueChanged(ListSelectionEvent e)
ListSelectionListener は、列の選択を変更するときに、ListSelectionEvent を転送します。

定義:
インタフェース ListSelectionListener 内の valueChanged
パラメータ:
e - 変更イベント

createSelectionModel

protected ListSelectionModel createSelectionModel()
新規のリスト選択のデフォルトモデルを作成します。


recalcWidthCache

protected void recalcWidthCache()
すべての列の幅を組合わせた合計を再計算します。totalColumnWidth プロパティを更新します。


JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。