2014-01-17 6 views
0

내 응용 프로그램에서 두 개 이상의 패널을 포함하는 borderContainer를 사용하고 있습니다.이 패널은 모두 크기를 조정할 수 있습니다. 내 문제는 패널 옆에있는 패널에 닿으면 패널의 크기를 조정하는 동안 자동으로 크기 조정을 멈춰야한다는 것입니다. hittestObject를 사용하고 타격 지점을 잡을 수는 있지만 크기 조정 이벤트를 중지하는 방법을 알지 못합니다. 도와주세요.flex에서 패널의 크기를 조정하는 동안 겹치지 않도록하십시오.

답변

0

이 코드는 테스트하지 않았지만 시도해 볼 수 있습니다. :). 기본적으로 특정 메서드의 기본 동작을 중지해야 할 때마다 preventDefault 메서드를 사용해야합니다.

<mx:Script> 
    <![CDATA[ 
     import mx.containers.Panel; 
     import mx.events.ResizeEvent; 

    //Your other codes here 

    public function panel_resizeHandler(event:ResizeEvent):void 
    { 
      var isTouched:Boolean = firstPanel.hitTestObject(secondPanel); 

      if(isTouched) 
      { 
       event.preventDefault(); 
      } 

    } 
    ]]> 
</mx:Script> 

<mx:Panel id="firstPanel" resize="panel_resizeHandler(event)> 
    <!-- Panel contents here--> 
</mx:Panel> 
<mx:Panel id="secondPanel" "> 
    <!--Panel Contents Here --> 
</mx:Panel>