Home Flex Flex event phase detection example



Flex event phase detection example
Posted on: June 10, 2009 at 12:00 AM
With example below an introduction of phases in flex is demonstrated.

Flex event phase detection example

     

With example below an introduction of phases in flex is demonstrated. In flex there are three phases. capturing, targeting and bubbling.  These phases are actually the periods in which the flex does different jobs regarding an event, such as detecting the event listener for handling the event, triggering and then re-detecting listeners in reverse order for handling the event again. Event listeners are the functions or the methods that we create in our applications and inside event listeners, we create event associated objects. Event retorts (responds) , inside those function in which the corresponding event object is made.

Now going one by one we first have capturing phase in which flex checks containers like VBox  for the event listeners for handling the event inside them. Event listeners are either called or initialized inside the flex controls  with click and initialize attributes respectively. In Targeting phase flex just triggers the event and in the Bubbling phase flex re-begins its search for listeners but in order opposite to that was in capturing phase. 

 .eventPhase  property of event object is used to detect the current phase of event. This property by default allocates the numbers 1, 2 and 3 to the phases capturing, targeting and bubbling respectively. In the example, event current phase is detected inside different TextInput controls. 

Phase.mxml

<?xml version = '1.0' encoding = 'ISO-8859-1'?>
<mx:Application xmlns:mx = 'http://www.adobe.com/2006/mxml'>
  <mx:Script>
  public function eve(event:Event):void{
  txt0.text = 'Current Phase: ' + event.eventPhase;
  }  

  public function rose(event:Event):void{
  txt1.text = 'Current Phase: ' + event.eventPhase;
  }  
  
  public function neo(event:Event):void{
  txt2.text = 'Current Phase: ' + event.eventPhase;
  }

</mx:Script>  

  <mx:VBox>
  <mx:HBox>
  <mx:Label text = 'txt0' color = 'red'/>
  <mx:TextInput id = 'txt0' color = 
  'blue' click = 'eve(event);'/>
  </mx:HBox>

  <mx:HBox>
  <mx:Label text = 'txt1' color = 'red'/>
  <mx:TextInput id = 'txt1' color = 'blue'
 click = 'rose(event);'/>
  </mx:HBox>


  <mx:HBox>
  <mx:Label text = 'txt2' color = 'red'/>
  <mx:TextInput id = 'txt2' color = 'blue'
 click = 'neo(event);'/>
  </mx:HBox>
  </mx:VBox>


  <mx:HBox>  
  <mx:Button color = 'green' label = 
  'Phase detector' mouseOver = 'eve(event)
  ;rose(event);neo(event)'/>
  <mx:Button color = 'green' label = 'click me'
 click = 'eve(event);rose(event);
 neo(event)'/>
  </mx:HBox>  
</mx:Application>

Phase.swf

 

Download the code

Related Tags for Flex event phase detection example:
cflexgeturitartargetlexeaptliinascaesturingasehrstargetingeehaphaseandarssriringthcapturingargeapnd


More Tutorials from this section

Ask Questions?    Discuss: Flex event phase detection example  

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 

Ask Questions?

If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.

Ask your questions, our development team will try to give answers to your questions.