public class DefaultTableColumnModel extends Object implements TableColumnModel, PropertyChangeListener, ListSelectionListener, Serializable
JTable
の標準の列ハンドラです。
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースとの互換性がなくなる予定です。現在の直列化のサポートは、短期間の格納や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。1.4 以降、すべての JavaBeansTM 用の長期間の格納サポートが 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
、インタフェース: TableColumnModel
aColumn
- 追加される TableColumn
IllegalArgumentException
- aColumn
が null
である場合removeColumn(javax.swing.table.TableColumn)
public void removeColumn(TableColumn column)
tableColumns
配列から column
を削除します。column
がテーブルの列リストにない場合、このメソッドは処理をしません。tile
は、ヘッダーおよびテーブルのビューをサイズ変更するために呼び出されます。また、このメソッドはそのリスナーに columnRemoved
イベントを送ります。removeColumn
、インタフェース: TableColumnModel
column
- 削除する TableColumn
addColumn(javax.swing.table.TableColumn)
public void moveColumn(int columnIndex, int newIndex)
columnIndex
にある列およびヘッダーを newIndex
に移動します。移動前に columnIndex
にあった列は newIndex
に置かれます。この場所を作るため、これまで newIndex
にあった列は、左または右に移動します。columnIndex
と newIndex
が同じ場合、列は移動しません。また、このメソッドはそのリスナーに columnMoved
イベントを送ります。moveColumn
、インタフェース: TableColumnModel
columnIndex
- 移動する列のインデックスnewIndex
- 列を移動する新規インデックスIllegalArgumentException
- column
または newIndex
が有効な範囲にない場合public void setColumnMargin(int newMargin)
newMargin
に設定します。また、このメソッドはそのリスナーに columnMarginChanged
イベントを送ります。setColumnMargin
、インタフェース: TableColumnModel
newMargin
- ピクセル単位の新規のマージン幅getColumnMargin()
, getTotalColumnWidth()
public int getColumnCount()
tableColumns
配列の列数を返します。getColumnCount
、インタフェース: TableColumnModel
tableColumns
配列の列数getColumns()
public Enumeration<TableColumn> getColumns()
Enumeration
を返します。getColumns
、インタフェース: TableColumnModel
Enumeration
public int getColumnIndex(Object identifier)
equals
を使って比較したときに識別子が identifier
と等しい tableColumns
配列内の最初の列のインデックスを返します。getColumnIndex
、インタフェース: TableColumnModel
identifier
- 識別子オブジェクトidentifier
と等しい tableColumns
配列内の最初の列のインデックスIllegalArgumentException
- identifier
が null
の場合、またはこの identifier
を持っている TableColumn
がない場合getColumn(int)
public TableColumn getColumn(int columnIndex)
columnIndex
にある列の TableColumn
オブジェクトを返します。getColumn
、インタフェース: TableColumnModel
columnIndex
- 要求する列のインデックスcolumnIndex
にある列の TableColumn
オブジェクトpublic int getColumnMargin()
TableColumn
の幅マージンを返します。デフォルトの columnMargin
は 1 です。getColumnMargin
、インタフェース: TableColumnModel
TableColumn
の最大幅setColumnMargin(int)
public int getColumnIndexAtX(int x)
x
位置にある列のインデックスを返します。このポイントが列の範囲外にある場合は -1 を返します。Swing の分離可能なモデルアーキテクチャーを使用している場合、TableColumnModel はテーブル列が実際に画面上でどのように表示されるかを認識しません。列の視覚的表現は、このモデル (通常は JTable) を使用するビューとコントローラオブジェクトによって決まります。ビューとコントローラは、必ずしも左から右という順に列を表示する必要はありません。たとえば、ロケールの設定に対応させるために右から左へ列を表示したり、ユーザーの要求に従って一部の列を隠したりといったことが可能です。モデルでは、画面上で列がどのように配置されるかがわからないため、指定された xPosition
は、2D グラフィックス空間の座標とみなされません。代わりに、モデルの最初の列から始まる幅とみなされます。2D 空間で指定された X 座標の列インデックスが必要な場合は、代わりに JTable.columnAtPoint
を使用します。getColumnIndexAtX
、インタフェース: TableColumnModel
x
- 対象の水平方向の位置JTable.columnAtPoint(java.awt.Point)
public int getTotalColumnWidth()
getTotalColumnWidth
、インタフェース: TableColumnModel
totalColumnWidth
プロパティーpublic void setSelectionModel(ListSelectionModel newModel)
TableColumnModel
の選択モデルを newModel
に設定し、新しい選択モデルからのリスナー通知を受信するように登録します。newModel
が null
の場合、例外がスローされます。setSelectionModel
、インタフェース: TableColumnModel
newModel
- 新しい選択モデルIllegalArgumentException
- newModel
が null
である場合getSelectionModel()
public ListSelectionModel getSelectionModel()
ListSelectionModel
を返します。getSelectionModel
、インタフェース: TableColumnModel
null
。setSelectionModel(javax.swing.ListSelectionModel)
public void setColumnSelectionAllowed(boolean flag)
setColumnSelectionAllowed
、インタフェース: TableColumnModel
flag
- 列の選択が許可されている場合は true、そうでない場合は falseTableColumnModel.getColumnSelectionAllowed()
public boolean getColumnSelectionAllowed()
getColumnSelectionAllowed
、インタフェース: TableColumnModel
columnSelectionAllowed
プロパティーTableColumnModel.setColumnSelectionAllowed(boolean)
public int[] getSelectedColumns()
selectionModel
が null
の場合、空の配列が返されます。getSelectedColumns
、インタフェース: TableColumnModel
selectionModel
が null
の場合は空の配列public int getSelectedColumnCount()
getSelectedColumnCount
、インタフェース: TableColumnModel
public void addColumnModelListener(TableColumnModelListener x)
addColumnModelListener
、インタフェース: TableColumnModel
x
- TableColumnModelListener
オブジェクトpublic void removeColumnModelListener(TableColumnModelListener x)
removeColumnModelListener
、インタフェース: TableColumnModel
x
- TableColumnModelListener
オブジェクトpublic TableColumnModelListener[] getColumnModelListeners()
ColumnModelListener
。列モデルリスナーが現在登録されていない場合は空の配列addColumnModelListener(javax.swing.event.TableColumnModelListener)
, removeColumnModelListener(javax.swing.event.TableColumnModelListener)
protected void fireColumnAdded(TableColumnModelEvent e)
e
- 受け取ったイベントEventListenerList
protected void fireColumnRemoved(TableColumnModelEvent e)
e
- 受け取ったイベントEventListenerList
protected void fireColumnMoved(TableColumnModelEvent e)
e
- 受け取ったイベントEventListenerList
protected void fireColumnSelectionChanged(ListSelectionEvent e)
e
- 受け取ったイベントEventListenerList
protected void fireColumnMarginChanged()
EventListenerList
public <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
、インタフェース: PropertyChangeListener
evt
- PropertyChangeEvent
public void valueChanged(ListSelectionEvent e)
ListSelectionListener
は、列の選択が変更されると、ListSelectionEvents
を転送します。valueChanged
、インタフェース: ListSelectionListener
e
- 変更イベントprotected ListSelectionModel createSelectionModel()
protected void recalcWidthCache()
totalColumnWidth
プロパティーを更新します。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.