パッケージ | mx.managers |
クラス | public class FocusManager |
継承 | FocusManager EventDispatcher Object |
実装 | IFocusManager |
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
FocusManager は、「コンポーネントレベル」からフォーカスを管理します。 Flex では、コンポーネントの UITextField が、テキストのキーボード入力を可能にする唯一の方法となります。 Flash Player または AIR から見て、フォーカスはこの UITextField にあります。 一方 FocusManager から見ると、フォーカスは UITextField の親であるコンポーネントにあります。 つまり、コンポーネントレベルと Flash Player レベルのフォーカスには違いがあります。 アプリケーション開発者は一般的にコンポーネントレベル以外のフォーカスを扱う必要はありませんが、コンポーネント開発者は Flash Player レベルのフォーカスを理解していなければなりません。
FocusManager で管理できるすべてのコンポーネントは、mx.managers.IFocusManagerComponent を実装する必要がありますが、Flash Player レベルのフォーカスで管理されるオブジェクトではその必要はありません。
FocusManager では defaultButton の概念も管理します。これは、Enter キーが押されたときに、その時点でのフォーカスの位置に応じて click イベントを送出するフォーム上の Button オブジェクトです。
さらに例を参照
プロパティ | 定義元 | ||
---|---|---|---|
constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | ||
defaultButton : IButton
元のデフォルト Button コントロールへの参照です。 | FocusManager | ||
defaultButtonEnabled : Boolean
デフォルトボタンをアクティブ化するために Enter キーが押されていることを FocusManager がチェックするかどうかを示すフラグです。 | FocusManager | ||
focusPane : Sprite
コンテナ間でフォーカスが移動されるときにコンテナ間で移動する単一の Sprite オブジェクトです。 | FocusManager | ||
nextTabIndex : int [読み取り専用]
このタブループで次に使用する一意のタブインデックス。 | FocusManager | ||
showFocusIndicator : Boolean
コンポーネントがフォーカスを持っていることを表すインジケーターを表示するかどうかを示すフラグです。 | FocusManager |
メソッド | 定義元 | ||
---|---|---|---|
コンストラクターです。 | FocusManager | ||
複数の IFocusManagerContainer が同時に可視である場合、SystemManager は FocusManager をアクティブまたは非アクティブにします。 | FocusManager | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | ||
複数の IFocusManagerContainer が同時に可視である場合、SystemManager は FocusManager をアクティブまたは非アクティブにします。 | FocusManager | ||
イベントをイベントフローに送出します。 | EventDispatcher | ||
指定されたオブジェクトが含まれている IFocusManagerComponent を返します(存在する場合)。 | FocusManager | ||
現在フォーカスを持っている IFocusManagerComponent コンポーネントを取得します。 | FocusManager | ||
ユーザーが Tab キーを押して別のコンポーネントにナビゲートするとフォーカスを取得する IFocusManagerComponent を返します。 | FocusManager | ||
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
showFocusIndicator を false に設定し、フォーカスがあるオブジェクト(存在する場合)から可視のフォーカスインジケーターを削除します。 | FocusManager | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | ||
フォーカスを IFocusManagerComponent コンポーネントに設定します。 | FocusManager | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
showFocusIndicator を true に設定し、フォーカスがあるオブジェクト(存在する場合)に可視のフォーカスインジケーターを描画します。 | FocusManager | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
[オーバーライド]
FocusManager オブジェクトをホストするコンポーネントのストリング表現を返します。このストリングの末尾には「.focusManager」というストリングが追加されます。 | FocusManager | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object | ||
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher |
defaultButton | プロパティ |
defaultButton:IButton
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
元のデフォルト Button コントロールへの参照です。 任意の Button コントロールにフォーカスがあるときに Enter キーを押すと、マウスでクリックした場合と同様に、Button コントロールの click
イベントが送出され、その Button コントロールがアクティブになります。 実際のデフォルト Button コントロールは、フォーカスが別の Button コントロールに移ると変更されますが、フォーカスがボタンにない場合は元に戻ります。
このプロパティは Flex コンテナによって管理されるため、デフォルトボタンを指定するために直接設定しないでください。
defaultButton
は、mx.controls.Button
クラスでなければなりません。これは、このプロパティが IUIComponent
タイプの場合でも同様です。
実装
public function get defaultButton():IButton
public function set defaultButton(value:IButton):void
defaultButtonEnabled | プロパティ |
defaultButtonEnabled:Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
デフォルトボタンをアクティブ化するために Enter キーが押されていることを FocusManager がチェックするかどうかを示すフラグです。 Enter
キーを認識する必要のある TextArea およびその他のコンポーネントでは、このプロパティを false
に設定し、デフォルトボタンが存在する場合に Enter キーがデフォルトボタンの click
イベントを送出しないようにします。
実装
public function get defaultButtonEnabled():Boolean
public function set defaultButtonEnabled(value:Boolean):void
focusPane | プロパティ |
nextTabIndex | プロパティ |
showFocusIndicator | プロパティ |
showFocusIndicator:Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
コンポーネントがフォーカスを持っていることを表すインジケーターを表示するかどうかを示すフラグです。 true
の場合、フォーカスを取得するコンポーネントは、そのコンポーネントがフォーカスを持つ可視インジケーターを描画します。
デフォルトは false
で、ユーザーが Tab キーを使用すると true
に設定されます。
showFocus()
メソッドおよび hideFocus()
メソッド使用してこのプロパティを変更すると、コンポーネントがフォーカスを持つ可視インジケーターも更新されるため、通常はこれらのメソッドを使用することをお勧めします。
実装
public function get showFocusIndicator():Boolean
public function set showFocusIndicator(value:Boolean):void
FocusManager | () | コンストラクター |
public function FocusManager(container:IFocusManagerContainer, popup:Boolean = false)
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
コンストラクターです。
FocusManager は、IFocusManagerContainer の子の中でフォーカスを管理します。 これは、コンストラクターの実行中に IFocusManagerContainer に自動インストールされます。
パラメーターcontainer:IFocusManagerContainer — FocusManager をホストする IFocusManagerContainer。
| |
popup:Boolean (default = false ) — true の場合、コンテナがポップアップコンポーネントであり、メインアプリケーションではないことを示します。
|
activate | () | メソッド |
public function activate():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
複数の IFocusManagerContainer が同時に可視である場合、SystemManager は FocusManager をアクティブまたは非アクティブにします。 FocusManager が非アクティブ化されている IFocusManagerContainer の中でマウスがクリックされると、その FocusManager を対象とする activate()
メソッドが SystemManager から呼び出されます。 アクティブにされた FocusManager の deactivate()
メソッドは、他の FocusManager がアクティブにされる前に呼び出されます。
FocusManager ではイベントハンドラーを追加して、キーボードおよびマウス操作に関連するフォーカスを監視できるようにします。
deactivate | () | メソッド |
public function deactivate():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
複数の IFocusManagerContainer が同時に可視である場合、SystemManager は FocusManager をアクティブまたは非アクティブにします。 FocusManager が非アクティブ化されている IFocusManagerContainer の中でマウスがクリックされると、その FocusManager を対象とする activate()
メソッドが SystemManager から呼び出されます。 アクティブにされた FocusManager の deactivate()
メソッドは、他の FocusManager がアクティブにされる前に呼び出されます。
FocusManager ではイベントハンドラーを削除して、キーボードおよびマウス操作に関連するフォーカスを監視できるようにします。
findFocusManagerComponent | () | メソッド |
public function findFocusManagerComponent(o:InteractiveObject):IFocusManagerComponent
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
指定されたオブジェクトが含まれている IFocusManagerComponent を返します(存在する場合)。 プレーヤーでは Flex コンポーネントのサブコンポーネントにフォーカスを設定できるため、このメソッドでは、コンポーネント側から見てどの IFocusManagerComponent にフォーカスがあるかを判別します。
パラメーター
o:InteractiveObject — プレーヤーレベルのフォーカスを取得できるオブジェクトです。
|
IFocusManagerComponent — o が格納されている IFOcusManagerComponent、または null です。
|
getFocus | () | メソッド |
public function getFocus():IFocusManagerComponent
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
現在フォーカスを持っている IFocusManagerComponent コンポーネントを取得します。 このメソッドを呼び出すと、どのコンポーネントにフォーカスがあるかが示されるので、Stage オブジェクトよりもこのメソッドを使用することをお勧めします。 Stage オブジェクトは、該当コンポーネント内のサブコンポーネントを返す場合があります。
戻り値IFocusManagerComponent — フォーカスを持っている IFocusManagerComponent オブジェクト。
|
getNextFocusManagerComponent | () | メソッド |
public function getNextFocusManagerComponent(backward:Boolean = false):IFocusManagerComponent
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
ユーザーが Tab キーを押して別のコンポーネントにナビゲートするとフォーカスを取得する IFocusManagerComponent を返します。 アプリケーション内に他に有効なコンポーネントがない場合は、現在フォーカスがあるコンポーネントと同じコンポーネントを返します。
パラメーター
backward:Boolean (default = false ) — true の場合、Shift+Tab キーを押した場合と同じオブジェクトを返します。
|
IFocusManagerComponent — フォーカスを取得するコンポーネント。
|
hideFocus | () | メソッド |
public function hideFocus():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
showFocusIndicator
を false
に設定し、フォーカスがあるオブジェクト(存在する場合)から可視のフォーカスインジケーターを削除します。
setFocus | () | メソッド |
public function setFocus(o:IFocusManagerComponent):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
フォーカスを IFocusManagerComponent コンポーネントに設定します。コンポーネントの可視性や、有効にされた状態またはその他の状態はチェックされません。
パラメーター
o:IFocusManagerComponent — フォーカスを取得可能なコンポーネント。
|
showFocus | () | メソッド |
public function showFocus():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
showFocusIndicator
を true
に設定し、フォーカスがあるオブジェクト(存在する場合)に可視のフォーカスインジケーターを描画します。
toString | () | メソッド |
override public function toString():String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
FocusManager オブジェクトをホストするコンポーネントのストリング表現を返します。このストリングの末尾には「.focusManager
」というストリングが追加されます。
String — FocusManager オブジェクトをホストするコンポーネントのストリング表現を返します。このストリングの末尾には「.focusManager 」というストリングが追加されます。
|
Tue Jun 12 2018, 10:34 AM Z