このイベントはポップアップでのみ発生します。マウスイベントをチェックする場合は、通常のマウスを親コンテナに追加し、ターゲットがでない場合はであるかどうかを確認する必要があります。
これを実行する別の方法は、ステージとコンポーネントでイベントをキャッチすることです。バブルが上に行くので、コンポーネントのクリックが最初に捕捉されます。
public var bCompClicked=false;
stage.addEventListener(MouseEvent.CLICK,onStageClick);
myComponent.addEventListener(MouseEvent.CLICK,onComponentClick);
private function onComponentClick(event:MouseEvent):void{
bCompClicked = true;
}
private function onStageClick(event:MouseEvent):void{
if(!bCompClicked){ //we didn't click the component, so we clicked outside it..
clickedOutSide();
}else{
bCompClicked=false; //we did click the component, set to false for the next time.
}
}
private function clickedOutSide():void{
//do what you want when someone clicks outside...
}
免責事項私はこれをテストしたか、非常に難しいそれについて考えた...ので、それが動作しないことがありませんでした。
これは、コンポーネントの外部でコンポーネントをクリックして閉じることができる機能です。 – xwgou