public class DefaultTableColumnModel extends Object implements TableColumnModel, PropertyChangeListener, ListSelectionListener, Serializable
JTable
の標準の列ハンドラです。
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースとの互換性がなくなる予定です。現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。1.4以降、すべてのJavaBeans(tm)用の長期間の格納サポートが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, 2014, Oracle and/or its affiliates. All rights reserved.