JavaTM 2 Platform
Standard Ed. 5.0

javax.swing
クラス SortingFocusTraversalPolicy

java.lang.Object
  上位を拡張 java.awt.FocusTraversalPolicy
      上位を拡張 javax.swing.InternalFrameFocusTraversalPolicy
          上位を拡張 javax.swing.SortingFocusTraversalPolicy
直系の既知のサブクラス:
LayoutFocusTraversalPolicy

public class SortingFocusTraversalPolicy
extends InternalFrameFocusTraversalPolicy

特定の Comparator に基づいてフォーカストラバーサルサイクルの Component をソートすることによってトラバーサルの順序を判定する FocusTraversalPolicy です。Component の階層のうち、可視でも表示可能でもない部分は含まれません。

SortingFocusTraversalPolicy は、デフォルトの場合、暗黙にフォーカスをダウンサイクルで移動します。つまり、通常のフォーカストラバーサルの場合、フォーカスサイクルのルートのあとにトラバースされる Component は、フォーカスサイクルのルートがフォーカスするデフォルトの Component です。setImplicitDownCycleTraversal メソッドでこの動作を無効にすることができます。

デフォルトでは、このクラスのメソッドは、可視性、表示可能性、使用可能性、フォーカス可能性のすべてを満たす場合だけ、Component を返します。サブクラスでこの動作を変更するには、accept メソッドをオーバーライドします。

このポリシーは、フォーカストラバーサルポリシープロバイダを考慮しています。最初/最後/次/前の Component を検索する際に、フォーカストラバーサルポリシープロバイダが検出された場合は、そのフォーカストラバーサルポリシーを使用して検索操作が行われます。

導入されたバージョン:
1.4
関連項目:
Comparator

コンストラクタの概要
protected SortingFocusTraversalPolicy()
          Comparator を使わずに SortingFocusTraversalPolicy を構築します。
  SortingFocusTraversalPolicy(Comparator<? super Component> comparator)
          指定された Comparator で SortingFocusTraversalPolicy を構築します。
 
メソッドの概要
protected  boolean accept(Component aComponent)
          Component が新しいフォーカスオーナとして適切かどうかを判定します。
protected  Comparator<? super Component> getComparator()
          フォーカストラバーサルサイクルで Components をソートするために使用する Comparator を返します。
 Component getComponentAfter(Container aContainer, Component aComponent)
          aComponent のあとでフォーカスを受け取る Component を返します。
 Component getComponentBefore(Container aContainer, Component aComponent)
          aComponent の前にフォーカスを受け取る Component を返します。
 Component getDefaultComponent(Container aContainer)
          フォーカスするデフォルトの Component を返します。
 Component getFirstComponent(Container aContainer)
          トラバーサルサイクルの最初の Component を返します。
 boolean getImplicitDownCycleTraversal()
          この SortingFocusTraversalPolicy がフォーカスを暗黙にダウンサイクルで移動するかどうかを返します。
 Component getLastComponent(Container aContainer)
          トラバーサルサイクルの最後の Component を返します。
protected  void setComparator(Comparator<? super Component> comparator)
          フォーカストラバーサルサイクルで Components をソートするために使用する Comparator を設定します。
 void setImplicitDownCycleTraversal(boolean implicitDownCycleTraversal)
          この SortingFocusTraversalPolicy がフォーカスを暗黙にダウンサイクルで移動するかどうかを設定します。
 
クラス javax.swing.InternalFrameFocusTraversalPolicy から継承されたメソッド
getInitialComponent
 
クラス java.awt.FocusTraversalPolicy から継承されたメソッド
getInitialComponent
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

SortingFocusTraversalPolicy

protected SortingFocusTraversalPolicy()
Comparator を使わずに SortingFocusTraversalPolicy を構築します。サブクラスは、フォーカスサイクルのルートまたは KeyboardFocusManager にこの FocusTraversalPolicy をインストールする前に、setComparator で Comparator を設定する必要があります。


SortingFocusTraversalPolicy

public SortingFocusTraversalPolicy(Comparator<? super Component> comparator)
指定された Comparator で SortingFocusTraversalPolicy を構築します。

メソッドの詳細

getComponentAfter

public Component getComponentAfter(Container aContainer,
                                   Component aComponent)
aComponent のあとでフォーカスを受け取る Component を返します。aContainer には、aComponent のフォーカスサイクルのルートまたはフォーカストラバーサルポリシープロバイダを指定する必要があります。

SortingFocusTraversalPolicy は、デフォルトの場合、暗黙にフォーカスをダウンサイクルで移動します。つまり、通常のフォーカストラバーサルの場合、フォーカスサイクルのルートのあとにトラバースされる Component は、フォーカスサイクルのルートがフォーカスするデフォルトの Component です。setImplicitDownCycleTraversal メソッドでこの動作を無効にすることができます。

aContainer がフォーカストラバーサルポリシープロバイダである場合、フォーカスは常にダウンサイクルで転送されます。

定義:
クラス FocusTraversalPolicy 内の getComponentAfter
パラメータ:
aContainer - aComponent のフォーカスサイクルのルート、またはフォーカストラバーサルポリシープロバイダ
aComponent - aContainer の (場合によっては間接的な) 子、または aContainer 自身
戻り値:
aComponent のあとにフォーカスを受け取る Component。適切な Component が見つからない場合は null
例外:
IllegalArgumentException - aContainer が aComponent のフォーカスサイクルのルートまたはフォーカストラバーサルポリシープロバイダでない場合、あるいは aComponent が null の場合

getComponentBefore

public Component getComponentBefore(Container aContainer,
                                    Component aComponent)
aComponent の前にフォーカスを受け取る Component を返します。aContainer には、aComponent のフォーカスサイクルのルートまたはフォーカストラバーサルポリシープロバイダを指定する必要があります。

SortingFocusTraversalPolicy は、デフォルトの場合、暗黙にフォーカスをダウンサイクルで移動します。つまり、通常のフォーカストラバーサルの場合、フォーカスサイクルのルートのあとにトラバースされる Component は、フォーカスサイクルのルートがフォーカスするデフォルトの Component です。setImplicitDownCycleTraversal メソッドでこの動作を無効にすることができます。

aContainer がフォーカストラバーサルポリシープロバイダである場合、フォーカスは常にダウンサイクルで転送されます。

定義:
クラス FocusTraversalPolicy 内の getComponentBefore
パラメータ:
aContainer - aComponent のフォーカスサイクルのルート、またはフォーカストラバーサルポリシープロバイダ
aComponent - aContainer の (場合によっては間接的な) 子、または aContainer 自身
戻り値:
aComponent の前にフォーカスを受け取る Component。適切な Component が見つからない場合は null
例外:
IllegalArgumentException - aContainer が aComponent のフォーカスサイクルのルートまたはフォーカストラバーサルポリシープロバイダでない場合、あるいは aComponent が null の場合

getFirstComponent

public Component getFirstComponent(Container aContainer)
トラバーサルサイクルの最初の Component を返します。このメソッドは、順方向のトラバーサルがラップするときに、次にフォーカスする Component を判定するために使用します。

定義:
クラス FocusTraversalPolicy 内の getFirstComponent
パラメータ:
aContainer - 最初のコンポーネントが返される aComponent のフォーカスサイクルのルートまたはフォーカストラバーサルポリシープロバイダ
戻り値:
aContainer のトラバーサルサイクルの最初の Component。適切な Component が見つからない場合は null
例外:
IllegalArgumentException - aContainer が null の場合

getLastComponent

public Component getLastComponent(Container aContainer)
トラバーサルサイクルの最後の Component を返します。このメソッドは、逆方向のトラバーサルがラップするときに、次にフォーカスする Component を判定するために使用します。

定義:
クラス FocusTraversalPolicy 内の getLastComponent
パラメータ:
aContainer - 最後のコンポーネントが返される aComponent のフォーカスサイクルのルートまたはフォーカストラバーサルポリシープロバイダ
戻り値:
aContainer のトラバーサルサイクルの最後の Component。適切な Component が見つからない場合は null
例外:
IllegalArgumentException - aContainer が null の場合

getDefaultComponent

public Component getDefaultComponent(Container aContainer)
フォーカスするデフォルトの Component を返します。aContainer にルートがある新しいフォーカストラバーサルサイクルにトラバースするとき、この Component は最初にフォーカスを受け取ります。このメソッドのデフォルトの実装は、getFirstComponent と同じ Component を返します。

定義:
クラス FocusTraversalPolicy 内の getDefaultComponent
パラメータ:
aContainer - デフォルトのコンポーネントが返される aComponent のフォーカスサイクルのルートまたはフォーカストラバーサルポリシープロバイダ
戻り値:
aContainer のトラバーサルサイクルのデフォルトの Component。適切な Component が見つからない場合は null
例外:
IllegalArgumentException - aContainer が null の場合
関連項目:
getFirstComponent(java.awt.Container)

setImplicitDownCycleTraversal

public void setImplicitDownCycleTraversal(boolean implicitDownCycleTraversal)
この SortingFocusTraversalPolicy がフォーカスを暗黙にダウンサイクルで移動するかどうかを設定します。true の場合、通常のフォーカストラバーサルでは、フォーカスサイクルのルートのあとにトラバースされる Component は、フォーカスサイクルのルートからフォーカスを受け取るデフォルトの Component です。false の場合、指定されたフォーカスサイクルをルートにするフォーカストラバーサルサイクル内の、次の Component が代わりにトラバースされます。このプロパティのデフォルト値は true です。

パラメータ:
implicitDownCycleTraversal - この SortingFocusTraversalPolicy が暗黙にフォーカスをダウンサイクルで移動するかどうか
関連項目:
getImplicitDownCycleTraversal(), getFirstComponent(java.awt.Container)

getImplicitDownCycleTraversal

public boolean getImplicitDownCycleTraversal()
この SortingFocusTraversalPolicy がフォーカスを暗黙にダウンサイクルで移動するかどうかを返します。true の場合、通常のフォーカストラバーサルでは、フォーカスサイクルのルートのあとにトラバースされる Component は、フォーカスサイクルのルートからフォーカスを受け取るデフォルトの Component です。false の場合、指定されたフォーカスサイクルをルートにするフォーカストラバーサルサイクル内の、次の Component が代わりにトラバースされます。

戻り値:
この SortingFocusTraversalPolicy が暗黙にフォーカスをダウンサイクルで移動するかどうか
関連項目:
setImplicitDownCycleTraversal(boolean), getFirstComponent(java.awt.Container)

setComparator

protected void setComparator(Comparator<? super Component> comparator)
フォーカストラバーサルサイクルで Components をソートするために使用する Comparator を設定します。

パラメータ:
comparator - ソートに使用する Comparator

getComparator

protected Comparator<? super Component> getComparator()
フォーカストラバーサルサイクルで Components をソートするために使用する Comparator を返します。

戻り値:
ソートに使用する Comparator

accept

protected boolean accept(Component aComponent)
Component が新しいフォーカスオーナとして適切かどうかを判定します。デフォルトでは、可視性、表示可能性、使用可能性、フォーカス可能性のすべてを満たす場合だけ、Component を受け入れます。

パラメータ:
aComponent - フォーカスオーナとして適切かどうかを判定する Component
戻り値:
aComponent が可視、表示可能、使用可能、フォーカス可能な場合は true、そうでない場合は false

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 も参照してください。