No, no, no, this will not work.  You must use the event mechanism.

 

Tracy Spratt,

Lariat Services, development services available

  _____  

From: [email protected] [mailto:[email protected]] On
Behalf Of Nick Middleweek
Sent: Wednesday, August 26, 2009 7:33 PM
To: [email protected]
Subject: Re: [Spam] [flexcoders] Question on Flex Script Execution +
Alert.show

 

  

I'm not sure if this technique is frowned upon but...


You could have a new private var boolAlertContinue:Boolean = false;

In your alertHandler function, you would set it to true... boolAlertContinue
= true;

And after the Alert.show and before the if(myAlert == 1) you need to do a do
while loop...

do { 


  //Not sure if there's a 'dummy' command to prevent CPU hog so we'll just
check the time...






  var dtmNow:Date = new Date();


} 


while (boolAlertContinue);


or you could probably initialise your myAlert:int = null and in the do ...
while loop check for (myAlert != null)


Cheers,
Nick





2009/8/26 Angelo Anolin <angelo_anolin@ <mailto:[email protected]>
yahoo.com>

  

Hi FlexCoders,

This has puzzled me a bit..

I have the following scripts in my application:

private var myAlert:int;

private function testFunction(evt:Event):void
{
  Alert.show('do you want to proceed', 'Title', Alert.YES | Alert.NO, null,
alertHandler, null, Alert.YES);

  if(myAlert == 1)
  {
    // Do Something here
  }
  else
  {
    // Do other thing here
  }
}

Private function alertHandler(evt:CloseEvent)
{
  if(evt.Detail == Alert.YES)
  {
    myAlert = 1;
  }
  else
  {
    myAlert = -1;
  }
}

Now, what puzzles me is that the script after the Alert.show is triggered,
the scripts following it are also triggered.

Is there a way to ensure that the script following the Alert.show alert box
would only be executed after the Yes or No buttons has been pressed?

I won't be able to move the scripts after the Alert.show script to the
alertHandler event since there are some objects being set / modified prior
to the alert being called.

Inputs highly appreciated.

Thanks.

 



Reply via email to