2012-03-18 2 views
0

웹캠에 대한 정보를 읽는 응용 프로그램을 발견했습니다. 문제는 응용 프로그램이 시작되면 통계를 보려면 클릭해야한다는 것입니다.자동 실행 응용 프로그램

나는 이제 응용 프로그램을 mx : list i가 만든 애니메이션으로 만드는 버튼에 연결했습니다. 그러나 어쨌든 mx : 레이블에 출력을 생성하려면리스트를 주먹으로 클릭해야합니다.

카메라 통계를 자동 실행하려면 내 쇼 버튼을 클릭하기 만하면됩니다.

private function list_change(evt:ListEvent):void { 
    var tList:List = evt.currentTarget as List; 
    populateCameraInfo(tList.selectedIndex.toString()); 
} 
private function populateCameraInfo(cameraName:String):void { 
    camera = Camera.getCamera(cameraName); 
    textArea.text = ObjectUtil.toString(camera); 
} 

다음 (그리고 난 당신이 목록을 시작하는 볼 수 있도록 할 있으리라 믿고있어) :

감사

<?xml version="1.0"?> 
<!-- behaviors\CompositeEffects.mxml --> 
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> 

    <mx:Script> 
     <![CDATA[ 
       import mx.events.ListEvent; 
       import mx.utils.ObjectUtil; 


      private var camera:Camera; 
       private function list_change(evt:ListEvent):void { 
       var tList:List = evt.currentTarget as List; 
       var cameraName:String = tList.selectedIndex.toString(); 
       camera = Camera.getCamera(cameraName); 
       textArea.text = ObjectUtil.toString(camera); 
      } 
    ]]> 
    </mx:Script> 

    <mx:Parallel id="ZoomRotateShow"> 
     <mx:Zoom id="myZoomShow" 
       zoomHeightFrom="0.0" 
       zoomWidthFrom="0.0" 
       zoomHeightTo="1.0" 
       zoomWidthTo="1.0" 
       /> 
     <mx:Rotate id="myRotateShow"/> 
    </mx:Parallel> 

    <mx:Sequence id="ZoomRotateHide"> 
     <mx:Rotate id="myRotateHide"/> 
     <mx:Zoom id="myZoomHide" 
       zoomHeightFrom="1.0" 
       zoomWidthFrom="1.0" 
       zoomHeightTo="0.0" 
       zoomWidthTo="0.0" 
       /> 
    </mx:Sequence> 



     <mx:List id="list" 
       dataProvider="{Camera.names}" 
       width="200" 
       change="list_change(event);" 
       hideEffect="{ZoomRotateHide}" 
       showEffect="{ZoomRotateShow}" visible="false" 
       /> 

    <mx:Label id="textArea" height="185" x="674" y="228" dataChange="{Camera.names}" /> 

    <mx:Button id="myButton1" 
       label="Show!" 
       click="list.visible=true;" 
       /> 
    <mx:Button id="myButton2" 
       label="Hide!" 
       click="list.visible=false;" 
       /> 
</mx:Application> 

답변

1

첫째, 두 함수를 분할

<mx:List id="list" 
     dataProvider="{Camera.names}" 
     width="200" 
     change="list_change(event);" 
     hideEffect="{ZoomRotateHide}" 
     showEffect="{ZoomRotateShow}" 
     selectedIndex="0" 
     creationComplete="populateCameraInfo('0')" 
     /> 

이렇게하면 첫 번째 항목이 항상 선택됩니다.

+0

거의 도움이 필요한 것 : 라벨 안의 목록에있는 정보는 사용할 수 있습니까? 단추를 누르면 라벨이 생성하는 정보를 넣습니다. 단추 쇼가 정보를 보여주기를 원하기 때문에. 감사합니다 – Dymond

+1

@FelipeOtarola 목록을 처음에는 볼 수 없습니까? 그런 다음'creationComplete' 대신'show'에서하십시오. – Manish

+0

완벽하게 작동합니다. 감사합니다. – Dymond