モジュール java.desktop
パッケージ 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に適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。

関連項目:
JTable
  • フィールド詳細

    • 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イベントを送ります。
      定義:
      addColumn、インタフェース: TableColumnModel
      パラメータ:
      aColumn - 追加されるTableColumn
      例外:
      IllegalArgumentException - aColumnnullである場合
      関連項目:
      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にあった列は、左または右に移動します。 columnIndexnewIndexが同じ場合、列は移動しません。 また、このメソッドはそのリスナーに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 - identifiernullの場合、またはこの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に設定し、新しい選択モデルからのリスナー通知を受信するように登録します。 newModelnullの場合、例外がスローされます。
      定義:
      setSelectionModel、インタフェース: TableColumnModel
      パラメータ:
      newModel - 新しい選択モデル
      例外:
      IllegalArgumentException - newModelnullである場合
      関連項目:
      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()
      選択された列の配列を返します。 selectionModelnullの場合、空の配列が返されます。
      定義:
      getSelectedColumns、インタフェース: TableColumnModel
      戻り値:
      選択された列の配列。何も選択されていないか、selectionModelnullの場合は空の配列
    • 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プロパティを更新します。