Link to home
Start Free TrialLog in
Avatar of John Carney
John CarneyFlag for United States of America

asked on

Changing the size a movie clip with action script

I'm trying to get a handle on how AS works, and I came across an answer to a question that looks simple enough that I could learn exactly how it works. The script is at: https://www.experts-exchange.com/questions/22828685/scale-a-movie-clip-in-actionscript-show-transistion.html
My questions are:
1) How and where do I define TargetWidth?
2) What do I need to define in the line: clearInterval(myIntervalIDThatISetEarlier); and how and where do I define it?
3) How do I define what myMovieClip is? If it's called "testMC_", where do I put it, and how does the script know it.

In other words, I am still so ignorant that I need to know absolutely everything on the timeline necessary for the script to produce its intended results.

Thanks!
John

if (myMovieClip._width < myTargetWidth){
  myMovieClip._width++;  // this increments it by one
} else {
 clearInterval(myIntervalIDThatISetEarlier);
}
Avatar of Aneesh Chopra
Aneesh Chopra
Flag of India image

1.
'myMovieClip' is the instancename of movieClip which you want to resize. you may replace it with your  movieClip instancename.

2.
'myTargetWidth' is a variable which should be set the the number of pixels you want that movieClip should resize.
for example:
myTargetWidth = 400;

alternatively, you can simply use 400 in place of 'myTargetWidth'


3.
clearInterval(myIntervalIDThatISetEarlier);

above line of code is actually, stopping an setInterval function which is being called repeatedly.

see following link for more details on 'setInterval' and 'clearInterval'
http://livedocs.adobe.com/flash/9.0/main/00001216.html


Avatar of John Carney

ASKER

Thanks.  I tried the link, but unfortunately I can't figure out anything from a tutorial until I have an example of exactly what the finished product looks like! so the next part of my question is:
What is "myIntervalIDThatISetEarlier"?  Is that something that has to be defined? If so, where and how is it defined? (I'm sure trhe answer is at the link, but I can't figure it out because I don't understand the meaning of terms like: scope, methodName etc., and although i've read a lot of Flash Help items, it never explains the meaning of these terms in a way that this beginner can understand).

Anyway, I have a movie clip of a rotating suare with the instance name "myMovieClip". And my code  inFrame 1 is:
if (myMovieClip._width < 400px){
  myMovieClip._width++;  // this increments it by one
} else {
 clearInterval(myIntervalIDThatISetEarlier);
}

I get an error message saying that in Frame 1, Line 1: ')' expected, but of course as is typical of Flash errors, it doesn't explain where the ")' goes.
Please let me know exactly what my code should be>

Thanks!
John
yes, 'myIntervalIDThatISetEarlier' is a normal variable which stores the pointer to a 'setInterval()' object
which is being used as a reference to the running setInterval()

clearInterval() function needs a reference to the setInterval() method to stop it.

hence,
in following line of code 'clearInterval()' method is stopping a setInterval() execution by using its pointer/reference stored in the variable "myIntervalIDThatISetEarlier"

clearInterval(myIntervalIDThatISetEarlier);

I hope it would be clear

-------------------
Aneesh Chopra
-------------------
Hi Aneesh,
I wish it were clear to me, but it still isn't.
I got rid of the error message by eliminating the px after 400, so now the code has no errors, but it doesn't increase the size of myMovieClip (104px square).

Also, the code doesn't contain the phrase setInterval ... I only see clearInterval() ...... and what do you mean by" it's pointer/reference is stored in the variable "myIntervalIDThatISetEarlier"?  Where is that variable defined?
And are you saying that there is something in the variable "myIntervalIDThatISetEarlier" that is pointin/refering to the clearInterval() method?

Please give me the Action Script exactly as it should appear in my frame action, and tell me everything else I need to do in order for my rotating suare (104 x 104) to increase in size to 400 x 400.

And please forgive my denseness. I started out 2 years ago asking similarly dumb questions about VBA in Excel, and I have actually become quite proficent in that area.

Thanks!
John

CURRENT CODE:
if (myMovieClip._width < 400){
  myMovieClip._width++;  // this increments it by one
} else {
 clearInterval(myIntervalIDThatISetEarlier);
}
I suggest you to upload your sample FLA,
I will review whole existing code and update it according to your requirement

and finally, I will upload the udpated version for your review.

-------------------
Aneesh Chopra
-------------------
Thanks, Aneesh
Here is the link to the file:http://www.designamania.com/MichaelTekstra/resizeMC.fla
John
ASKER CERTIFIED SOLUTION
Avatar of Aneesh Chopra
Aneesh Chopra
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Awesome, thanks aneesh! And thanks for the education.  I'm sure I will have more similar questions today.

Thanks again,
John