Get externallu loaded swf frame length?...

Hi all,
I need to know the frame length of a swf loaded via
loadMovie().
I want to stop the loaded swf playback before it reaches its
last frame. So I need to extract
(detect) the frame length of the swf, and call a function
when the swf reaches the second to last frame.
Is this possible?
PS: I am not fluent in AS, so please provide some kind of
code example if you can.
seb (@webtrans1.com)
high-end web design:
http://webtrans1.com
Sign-up for a free beta test of SiteLander, an ingenious
website-builder:
http://webtrans1.com/sitelander/
music:
http://myspace.com/popmodelberlin

use the _totalframes property of your target movieclip (or
_level).

Similar Messages

  • Loaded swf does not recognize stage of parent correctly

    I have an issue that is probably easily solved, but my attempts to solve it have been frivolous. 
    I am creating a “lightbox” to display artwork, but I have come across a slight hiccup.
    I am executing the lightbox functionality from a swf file that is loaded by a parent swf.  For testing purposes, when the lightbox button is clicked, the image should fill the entire stage.  Even though both the loaded swf and the parent swf recognize the same stage dimensions at all times(validated through tracing statements) and the lightbox image is positioned to the top/left corner of the stage, the image instead aligns to the top/left corner of the loaded swf.  And if the stage is resized after the lightbox image is displayed, the container MC (which is located in the parent swf and centers all the site’s content) re-aligns to the top/left corner of the stage . 
    To better illustrate these points, click the link below to see some screenshots with captions:
    http://newsite.katech.com/assets/images/lightbox_screenshots.jpg
    Also, here is the code applicable code from the loaded swf:
    stop();
    picture.visible = false;
    picture.x = 0;
    picture.y = 0;
    picture.width = stage.stageWidth;
    picture.height = stage.stageHeight;
    lightboxBtn.buttonMode = true;
    trace("embedded swf says the stage is " + stage.stageWidth + " X " + stage.stageHeight);
    function onStageResize(event:Event):void
                    trace("embedded swf says the stage is " + stage.stageWidth + " X " + stage.stageHeight);
                    picture.x = 0;
                    picture.y = 0;
                    picture.width = stage.stageWidth;
                    picture.height = stage.stageHeight;
    stage.addEventListener(Event.RESIZE, onStageResize);
    function showImage(event:MouseEvent):void
                    picture.visible = true;
    lightboxBtn.addEventListener(MouseEvent.CLICK, showImage);
    And for the applicable code from the parent swf:
    stop();
    trace("MAIN swf says the stage is " + stage.stageWidth + " X " + stage.stageHeight);
    //aligns site content to center of stage
    function onStageResize(event:Event):void
                    trace("MAIN swf says the stage is " + stage.stageWidth + " X " + stage.stageHeight);
                    container.x = (stage.stageWidth/2) - (container.width/2);
                    container.y = (stage.stageHeight/2) - (container.height/2);
                    if (container.x < 0)
                                    container.x = 0;
                    if (container.y < 0)
                                    container.y = 0;
    stage.addEventListener(Event.RESIZE, onStageResize);
    How can I get the loaded swf to display the lightbox image correctly in respect to the parent swf?  What am I doing wrong?

    I have still yet to resolve this issue on my own, if anyone could point me in the right direction, it would be greatly appreciated.
    Also, when I updated my previous post something "screwy" happened with the edit, so I went back and corrected the mistakes in case it made things unclear.
    Thanks.

  • Can you tell when a loaded SWF has reached its final frame?

    I used loadMovie to load an external SWF into the bottom-half
    of a main "shell" swf. When that loaded SWF finishes playing (it's
    just an animation), I need to populate a text field with the word
    "DONE" . The text field resides on the _root, so I need some way to
    know when the loaded SWF has reached its last frame...
    This would obviously be easy if I had the .FLA of the loaded
    SWF because I could just write the actionscript on the last frame
    of that SWF to populate the _root textfield. Alas, I do not have
    the source FLA of that loaded SWF, so I need some way to have the
    main "shell" SWF/FLA know when that loaded SWF has reached its end.
    Is this possible???
    Thanks!!!

    DIY_Lobotomy,
    > The reality of my situation is that there's a "menu" of
    sorts that
    > gets loaded into "contentClip". This "menu" has a bunch
    of links.
    So far, so good.
    > When clicked, each link loads a DIFFERENT swf into
    "contentClip".
    > It is THOSE swfs that I need to note the end of.
    That's still okay.
    > So, there's actually more than one, and they're not
    exactly being
    > loaded directly from my main movie, since they're
    actually loaded
    > based on a link being clicked in the movie that is
    currently loaded
    > into "containerClip"
    The concept is still the same, no matter what. No matter how
    deep the
    one-clip-loads-another chain goes, you have to keep taps on
    each chain link.
    When the final link has loaded, you'll be able to make your
    object reference
    to that movie clip. That movie clip -- because it's an
    instance of the
    MovieClip class -- will have the _currentframe and
    _totalframes properties.
    You'll just be checking *that* cliip's properties instead of
    the one named
    contentClip in my own example.
    You can loop using onEnterFrame or, if you prefer, with
    setInterva().
    That doesn't much matter either, so long as you repeatedly
    poll the deepest
    clip to test its current frame against its last frame (this
    all assumes that
    the clip being tested is a linear animation whose end
    corresponds to its
    last frame; otherwise, you could check _currentframe against
    any arbitrary
    frame number).
    > I hope that wasn't too confusing! Do you still have a
    solution???
    Not too confusing to understand, but it might be confusing
    to route
    through in practice. Not confusing, actually, but meticulous
    ... you'll
    have to be careful with your pathing. Nested movie clips are
    very much like
    nested folders on your hard drive. Their instance names
    relate to the
    folder names.
    Now, if that menu doesn't have an instance name you provided
    -- or if
    any fork along the path has an instance name you can't
    control -- you can
    still reference the nested movie clips. If you test your file
    in the
    Debugger panel, you'll see all the instances laid out in
    hierarchical order.
    You'll see that automatic instance names are provided
    (something like
    "instance1", "instance2", etc.).
    David Stiller
    Contributor, How to Cheat in Flash CS3
    http://tinyurl.com/2cp6na
    "Luck is the residue of good design."

  • How can I get stage width of an loaded swf?

    Is there any way to get the real stageWidth of an loaded swf?
    The problem comes when the loaded swf has some elements outside the scene. In this case content.width becomes bigger then the scene.
    My code looks like this:
    var request:URLRequest = new URLRequest(file.url);
    var loader:Loader = new Loader();
    loader.load(request);
    loader.contentLoaderInfo.addEventListener(Event.INIT, checkSize);
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, addImg);
    private function checkSize(e:Event) {
                // this is where I need to see the width of my loaded swf
    trace(e.target.content.width);
    private function addImg(e:Event) {
                    trace("complete");
    Thanks,
    Andrei

    I don't think you can get the stage width of the loaded file unless you assign it as a constant somewhere within the file.  The loaded file forfeits its stage when it is loaded into another swf

  • Send loaded swf to a certain frame

    I'm sure this has been answered here before, but I can't find
    anything in Search.
    I load an external .swf file into a Loader. There is a button
    on the main timeline which is supposed to send the Loader's Child
    to frame 4. This has to be a simple operation, but I'm stymied. Any
    help would be greatly appreciated. Thanks!

    Hey, thanks for the quick response. Do you think you could
    expand on that a bit? I don't know how to reference the loaded
    swf... is it something like
    Loader.child.gotoAndStop(4)? Thanks again.

  • Load swf into mc frame by frame

    Hi, I have a movieclip to dynamically load swf's. Some of my
    swf's are slideshows and contain jpgs that are quite large.
    Therefore I do not want to wait till the end of a complete load to
    show the swf. Say, if i want to show picture 3 (at frame 3), i'd
    like to show it as soon as the frame is loaded. However, I also
    need to rezie the swf to fit my mc's fixed size. Resize only works
    after all bytes of the swf are loaded I believe.
    How do I solve this problem?
    Ted

    Can you be more specific? I read at the MCLoader apis, but
    still have no clue how to solve this problem.

  • Getting properties from loaded swf

    hi there,
    I am loading different swfs into my loader object "loader"
    and I also have a description of each swf below it ("desc"
    "desc_back").. Each swf is different in size and i want to move/
    scale "desc" and "desc_back" it to fit. This seems to be kind of
    working but it changes to fit the loaded swf before the one I want
    it to. it is if it is taking the properties of the last loaded swf
    instead of the one just loaded...I have tryed using an onload
    listener amoung a number of things. my action script is not very
    strong so it could be something simple.
    thanks :)

    you must wait until loading is complete before trying to
    access the _width and _height of the about-to-be-loaded swf. ie,
    use preloader code or the onLoadInit() method of the
    moviecliploader class.

  • How to unload externally loaded swf which contains 3D Carousel?

    Hello to all
    I am learning AS3 and have been taking on various tutorials found on the net. While learning about AS3 I came across a lesson on http://tutorials.flashmymind.com/2009/05/vertical-3d-carousel-with-actionscript-3-and-xml/ titled "Vertical 3D Carousel with AS3 and XML".
    I completed the tutorial and all worked fine so I then wanted to load the swf into a existing project. The loading of the swf goes fine and when I unload my loader it is removed but only visually as in my output panel in flash CS5 I get an error as follows
    TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at carousel_c_fla::MainTimeline/moveCarousel()
    this error repeats over and over again slowing my swf movie.
    So does this mean my main flash movie trying to still play / find my unloaded 3D Carousel?
    If so how do I unload remove all the AS3 that is trying to run from the 3D Carousel?
    I have included the AS3 below from the tutorial page and I understand that this is what I have to remove to "break free" from the 3D Carousel swf when it is unloaded. This is where I am stuck as my knowledge of AS3 is limited - Can you guys / girls help?
    //Import TweenMax
    import com.greensock.*;
    //The path to the XML file (use your own here)
    // old var from tutorial - var xmlPath:String = "http://tutorials.flashmymind.com/XML/carousel-menu.xml";
    var xmlPath:String = "carousel-menu.xml";
    //We'll store the loaded XML to this variable
    var xml:XML;
    //Create a loader and load the XML. Call the function "xmlLoaded" when done.
    var loader = new URLLoader();
    loader.load(new URLRequest(xmlPath));
    loader.addEventListener(Event.COMPLETE, xmlLoaded);
    //This function is called when the XML file is loaded
    function xmlLoaded(e:Event):void {
         //Make sure that we are not working with a null variable
         if ((e.target as URLLoader) != null ) {
              //Create a new XML object with the loaded XML data
              xml = new XML(loader.data);
              //Call the function that creates the menu
              createMenu();
    //We need to know how many items we have on the stage
    var numberOfItems:uint = 0;
    //This array will contain all the menu items
    var menuItems:Array = new Array();
    //Set the focal length
    var focalLength:Number = 350;
    //Set the vanishing point
    var vanishingPointX:Number = stage.stageWidth / 2;
    var vanishingPointY:Number = stage.stageHeight / 2;
    //We calculate the angleSpeed in the ENTER_FRAME listener
    var angleSpeed:Number = 0;
    //Radius of the circle
    var radius:Number = 128;
    //This function creates the menu
    function createMenu():void {
         //Get the number of menu items we will have
         numberOfItems = xml.items.item.length();
         //Calculate the angle difference between the menu items (in radians)
         var angleDifference:Number = Math.PI * (360 / numberOfItems) / 180;
         //We use a counter so we know how many menu items have been created
         var count:uint = 0;
         //Loop through all the <button></button> nodes in the XML
         for each (var item:XML in xml.items.item) {
              //Create a new menu item
              var menuItem:MenuItem = new MenuItem();
              //Calculate the starting angle for the menu item
              var startingAngle:Number = angleDifference * count;
              //Set a "currentAngle" attribute for the menu item
              menuItem.currentAngle = startingAngle;
              //Position the menu item
              menuItem.xpos3D = 0;
              menuItem.ypos3D = radius * Math.sin(startingAngle);
              menuItem.zpos3D = radius * Math.cos(startingAngle);
              //Calculate the scale ratio for the menu item (the further the item -> the smaller the scale ratio)
              var scaleRatio = focalLength/(focalLength + menuItem.zpos3D);
              //Scale the menu item according to the scale ratio
              menuItem.scaleX = menuItem.scaleY = scaleRatio;
              //Position the menu item to the stage (from 3D to 2D coordinates)
              menuItem.x = vanishingPointX + menuItem.xpos3D * scaleRatio;
              menuItem.y = vanishingPointY + menuItem.ypos3D * scaleRatio;
              //Add a text to the menu item
              menuItem.menuText.text = item.label;
              //Add a "linkTo" variable for the URL
              menuItem.linkTo = item.linkTo;
              //We don't want the text field to catch mouse events
              menuItem.mouseChildren = false;
              //Assign MOUSE_OVER, MOUSE_OUT and CLICK listeners for the menu item
              menuItem.addEventListener(MouseEvent.MOUSE_OVER, mouseOverItem);
              menuItem.addEventListener(MouseEvent.MOUSE_OUT, mouseOutItem);
              menuItem.addEventListener(MouseEvent.CLICK, itemClicked);
              //Add the menu item to the menu items array
              menuItems.push(menuItem);
              //Add the menu item to the stage
              addChild(menuItem);
              //Assign an initial alpha
              menuItem.alpha = 0.3;
              //Add some blur to the item
              TweenMax.to(menuItem,0, {blurFilter:{blurX:1, blurY:1}});
              //Update the count
              count++;
    //Add an ENTER_FRAME listener for the animation
    addEventListener(Event.ENTER_FRAME, moveCarousel);
    //This function is called in each frame
    function moveCarousel(e:Event):void {
         //Calculate the angle speed according to mouseY position
         angleSpeed = (mouseY - stage.stageHeight / 2) * 0.0002;
         //Loop through the menu items
         for (var i:uint = 0; i < menuItems.length; i++) {
              //Store the menu item to a local variable
              var menuItem:MenuItem = menuItems[i] as MenuItem;
              //Update the current angle of the item
              menuItem.currentAngle += angleSpeed;
              //Calculate a scale ratio
              var scaleRatio = focalLength/(focalLength + menuItem.zpos3D);
              //Scale the item according to the scale ratio
              menuItem.scaleX=menuItem.scaleY=scaleRatio;
              //Set new 3D coordinates
              menuItem.xpos3D=0;
              menuItem.ypos3D=radius*Math.sin(menuItem.currentAngle);
              menuItem.zpos3D=radius*Math.cos(menuItem.currentAngle);
              //Update the item's coordinates.
              menuItem.x=vanishingPointX+menuItem.xpos3D*scaleRatio;
              menuItem.y=vanishingPointY+menuItem.ypos3D*scaleRatio;
         //Call the function that sorts the items so they overlap each other correctly
         sortZ();
    //This function sorts the items so they overlap each other correctly
    function sortZ():void {
         //Sort the array so that the item which has the highest
         //z position (= furthest away) is first in the array
         menuItems.sortOn("zpos3D", Array.NUMERIC | Array.DESCENDING);
         //Set new child indexes for the item
         for (var i:uint = 0; i < menuItems.length; i++) {
              setChildIndex(menuItems[i], i);
    //This function is called when a mouse is over an item
    function mouseOverItem(e:Event):void {
         //Tween the item's properties
         TweenMax.to(e.target, 0.1, {alpha: 1, glowFilter:{color:0xffffff, alpha:1, blurX:60, blurY:60},blurFilter:{blurX:0, blurY:0}});
    //This function is called when a mouse is out of an item
    function mouseOutItem(e:Event):void {
         //Tween the item's properties
         TweenMax.to(e.target, 1, {alpha: 0.3, glowFilter:{color:0xffffff, alpha:1, blurX:0, blurY:0},blurFilter:{blurX:1, blurY:1}});
    //This function is called when an item is clicked
    function itemClicked(e:Event):void {
         //Navigate to the URL that's assigned to the menu item
         var urlRequest:URLRequest=new URLRequest(e.target.linkTo);
         navigateToURL(urlRequest);

    Hi Ned thanks for the reply,
    Ok so I have a button in my main movie that loads the external swf
    stop();
    var my_loader:Loader = new Loader();
    var my_btn:Button = new Button();
    var my_pb:ProgressBar = new ProgressBar();
    my_pb.source = my_loader.contentLoaderInfo;
    my_btn.addEventListener(MouseEvent.CLICK,startLoading);
    function startLoading(e:MouseEvent):void{
    my_loader.load(new URLRequest("carousel.swf"));
    addChild(my_pb);
    my_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, finishloading);
    function finishloading(e:Event):void{
    addChild(my_loader);
    my_loader.addEventListener("killMe",
    killLoadedClip);
    removeChild(my_pb);
    function killLoadedClip(e:Event):void {
    my_loader.removeEventListener("killMe",
    killLoadedClip);
    my_loader.unloadAndStop();
    removeChild(my_loader);
    Then I have a button in my loaded swf that closes the loader
    This is spread over 2 frames
    Frame1
    function closeIt(e:MouseEvent):void {
    parent.dispatchEvent(newEvent("killMe"));
    Frame 2
    back_btn.addEventListener(MouseEvent.CLICK, closeIt);
    Frame 2 also holds all the code for the carousel
    Thanks for your time and help in advance people ; )

  • How can I make media in swc load on frame 4?

    I created a project that is rather large... it has 20 or sound sound files, 10 or so fonts, and close to 400 png and jpeg files.
    Now,  all these assets were loaded in the fla library and over time, compile  started getting worse and worse to the point it was almost impossible to  debug without a 5 to 10 minute wait per build.
    After  many many hours and research I learend how to embed my media into an  swc. That, and turning off "warning mode" the compile time is now like,  10 secs down from 10 minutes - awesome.
    However, now my  preloader is not running because it has to wait for almost the full app  to download and run before it starts playing.
    I would  like to know how to delay the loading of the swc media so that the  projector will actually start playing before it's fully downloaded.
    Here is what I did.
    1.  Create a new fla, and put a bunch of graphics and media into the  library. Each media element has "export for action script" checked,  "Export on frame 1", a unquie class name and a base class defined.
    for example, let's say I have a png called "MyImage.png" in my library, and I give it a class name of classMyImage.
    2. Save the fla as "MyProject_library"
    3. In the publish settings, checked export swc. and publish it.
    now I have an swc in my project folder.
    4. Open my project, called "MyProject.fla" and open the action script settings.
    5. Set "Export classes in frame" to 4.
    6. Uncheck "Warnings Mode"
    7. In the "Library tab" I click the "browse to swc" button and select "MyProject_library.swc"
    8. Go to frame 1 of my project and create a blank frame.
    9. Go to frame 2 of my project, add a key frame and create my preloader code.
    addEventListener(Event.ENTER_FRAME, Preloader_Progress);
    stop();
    function Preloader_Progress(e:Event):void {
        var Loaded:int = this.root.loaderInfo.bytesLoaded;
         var Total:int = this.root.loaderInfo.bytesTotal;
         var p:Number = Loaded / Total;
        var perc:Number = Math.ceil(p * 100);
        txtPre.text = perc.toString() + "%";  // this is a text field on the stage on frame 2.
        if (Loaded >= Total) {
              gotoAndPlay(4);
    8. Go to frame 4 of my project, and for EVERY media element in my library, I add them to a dictionary so they get instantisated.
    import flash.utils.Dictionary;
    var swc = new Dictionary();
    swc["classMyImage"] = new classMyImage();
    I found that I HAVE to do this or assets will not load properly when I run the project.
    9. Build the rest of the project so I can get paid.
    10. Publish the swf and upload it to my website.
    Now, I don't get any errors, and after MUCH trial and error I  have finally got things working, however, before I migrated all my media  to the swc, the text field (with other graphics and progress bars and  pretty things) would become visible at about 5% and then fill up and  when at 100% would proceed to frame 4 and load all my media assets and  continue happily.
    After the migrating to the swc, I  look at a blank background for a while and then the app appears with the  text at 99%, this tells me that all my media is loading on frame 1,  thus not allowing the app to start playing until it's downloaded.
    I have tried exporting my swc with the "Export classes in frame" set to frame 4, but it made no difference.
    Anyone have any thoughts?

    I'm not sure it is possible since the time definition lies in the server/database and not reflect the time zone of the user.
    Any way I think it's the correct way to do since if users cross world would like to exchange data among them they will have same referenced time.

  • TypeError: Error #1009 (loaded SWF)

    I'm pulling out my hair on this one!
    I'm just starting a site (full-Flash site) using CS3 and AS3.
    I'm pretty much accustom to the new AS3 changes. I built a rough
    structure to make sure the way I wanted to set the site up would
    work (loading in external SWFs, etc.). The tests worked.
    Now, I'm going in to make some things real, and I'm getting
    this error as soon as an external SWF loads in:
    TypeError: Error #1009: Cannot access a property or method of
    a null object reference.
    at test_fla::MainTimeline/test_fla::frame2()
    I've tried narrowing it down, couldn't find the exact culprit
    (had to remove every ounce of ActionScript before it started to
    function again). So I started to rebuild that movie entirely --
    cleared out the Library and deleted every layer. Didn't work.
    Couldn't even add a stop(); action in Frame 1.
    Then I started completely fresh File > New, rebuilt again.
    I tested after every single change. I finally built it up to the
    point where I first tested the original, and it worked. So, then I
    added a couple more things tested again, and got the error again.
    Ahh, so I removed EXACTLY what I had just added. Tested again. SAME
    ERROR -- now it won't go away no matter what I remove!
    Crazier yet is that I can still load in my other test SWF
    files and they have actions in them, and they're set up the exact
    same way -- but they work...
    The whole site is new, so every SWF is CS3/AS3. I'm not even
    doing anything crazy, so I'm getting pretty frustrated trying to
    build an all AS3 site and I can't even do basic stuff....
    I can upload/email the FLA files in question if anyone has
    time to look...
    Thanks,
    Brandon

    Well, when I test the loaded SWF within the Flash environment
    (by itself), it plays just fine.
    Then, I try to play the root containing movie (both within
    Flash and on the web server) and as soon as that section loads, is
    when the error occurs.
    I've tried tracing everything. even down to putting trace()
    actions between every layer. Can't determine what causes it...
    One thing I noticed (but I assume is a naming convention that
    Flash uses), is in the error above you see "test_fla", well, lets
    say I have these files:
    test-container.fla
    test-home.fla
    I don't have a test_fla, but the error code refers to it
    anyway...

  • Setting External Loaded SWF dimension

    hi guys...,
    i'll be straight to point,well i'm now working on a project using action  script 3 now what i'm trying to make is a Main SWF that load whatever  other swf into it the tricky thing is that i used 1 xml document read  the external swf source and it's setting(such as it's x,y position and  it's width and height) and i'm having problem setting the loaded swf width and  height btw it's an desktop application and not a website application.,
    here is my code:
    //variable list
    var swfList:XMLList; //hold all the zone list from the xml
    var totalZone:uint; //total of zone there is in the xml
    var myURLLoader:URLLoader = new URLLoader();
    var swf:Movie Clip;//hold the loaded swf
    var swfLoader:Loader = new Loader();//loader instance used to load the external swf
    var myCounter:uint = 0;
    //load the xml file
    myURLLoader.load(new URLRequest('myXMLFile.xml'));
    myURLLoader.addEventListener(Event.COMPLETE, processXML, false, 0, true);
    function processXML(e:Event):void
        removeEventListener(Event.COMPLETE, processXML);
        XML.ignoreWhitespace= true;
        var myXML:XML = new XML(e.target.data);
        swfList = myXML.SWF;
        totalSWF = myXML.SWF.length();
        loadSWF();
    function loadSWF():void
        swfLoader.contentLoaderInfo.addEventListener(Event.INIT, swfSetting);
        swfLoader.load(new URLRequest(swfList[myCounter].@source));
    function swfSetting(e:Event):void
        //making new instance of sprite to hold the new loaded swf
        swf = new MovieClip();
        //casting the loader content into a movieclip
        swf = e.target.content;
        addChild(swf);
        swfLoader.unload();
        swf.x = swfList[myCounter].@left;
        swf.y = swfList[myCounter].@top;
        swf.width= swfList[myCounter].@width;
        swf.height= swfList[myCounter].@height;
        addChild(swf);
        if(myCounter < totalSWF)
            myCounter++;
            trace('myCounter: ' + myCounter );
            loadSWF();
    and here is what the result ( it make the width and height of the loaded swf to 0):
    swfLoader.contentLoaderInfo.width : 320
    swfLoader.contentLoaderInfo.height : 240
    module: MyVideo/flvplayer.swf
    x:0
    x container:0
    y:0
    y container:0
    xml width:550
    width container:0
    xml height:400
    height container:0
    myCounter: 1
    swfLoader.contentLoaderInfo.width : 550
    swfLoader.contentLoaderInfo.height : 400
    module: AnalogueClock.swf
    x:50
    x container:50
    y:0
    y container:0
    xml width:250
    width container:250
    xml height:200
    height container:200
    myCounter: 2
    swfLoader.contentLoaderInfo.width : 800
    swfLoader.contentLoaderInfo.height : 30
    module: MyNewsticker/newsticker.swf
    x:0
    x container:0
    y:0
    y container:0
    xml width:300
    width container:0
    xml height:50
    height container:0
    most of my loaded swf beside the analouge clock is full action script code and in case of the analouge clock it is a swf that has a movie clip on it's stage (the other are fully created from action script 3.0)
    please do help me..,
    cause i'm already really desperate and going crazy by this problem..,

    sorry i copied the code from the other swf i used to do try and error test..,
    basically the container is the same as swf varibale
    here the code so you would'nt get confused:
    //variable list
    var swfList:XMLList; //hold all the zone list from the xml
    var totalZone:uint; //total of zone there is in the xml
    var myURLLoader:URLLoader = new URLLoader();
    var swf:Movie Clip;//hold the loaded swf
    var swfLoader:Loader = new Loader();//loader instance used to load the external swf
    var myCounter:uint = 0;
    //load the xml file
    myURLLoader.load(new URLRequest('myXMLFile.xml'));
    myURLLoader.addEventListener(Event.COMPLETE, processXML, false, 0, true);
    function processXML(e:Event):void
        removeEventListener(Event.COMPLETE, processXML);
        XML.ignoreWhitespace= true;
        var myXML:XML = new XML(e.target.data);
        swfList = myXML.SWF;
        totalSWF = myXML.SWF.length();
        loadSWF();
    function loadSWF():void
        swfLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfSetting);
        swfLoader.load(new URLRequest(swfList[myCounter].@source));
    function swfSetting(e:Event):void
        //making new instance of sprite to hold the new loaded swf
        swf = new MovieClip();
        //casting the loader content into a movieclip
        swf = e.target.content;
        addChild(swf);
        swfLoader.unload();
        swf.x = swfList[myCounter].@left;
        swf.y = swfList[myCounter].@top;
        swf.width= swfList[myCounter].@width;
        swf.height= swfList[myCounter].@height;
        addChild(swf);
        if(myCounter < totalSWF)
            myCounter++;
            trace('myCounter: ' + myCounter );
            loadSWF();
    well in my code i did cast the loader into a movie clip and then set it's width and heigt,right???
    wouldn't it just give me the same result??
    if it's not can u describe what u mean in more detail??
    some example about accessing the loader content would be really appreciated

  • Load swf from a tree

    Could someone show me how to load swf file from a link on a
    tree node? The tree would come from embeded xml.
    Thanks

    I am getting 1034 Type coercion error. I have Googled it this
    error must have hundreds of links. Is it a bug in Flex 3? Here is
    the code. The problem only occurs when I link to a swf.
    <mx:Application xmlns:mx="
    http://www.adobe.com/2006/mxml"
    layout="vertical"
    verticalAlign="middle"
    backgroundColor="white">
    <mx:Script>
    <![CDATA[
    import mx.events.ListEvent;
    import mx.managers.*;
    import mx.flash.*;
    import mx.controls.treeClasses.*;
    private var t:Tree;
    private var dataObj:Object;
    private var suffix:String;
    private function tree_itemClick(evt:ListEvent):void {
    var t:Tree = evt.currentTarget as Tree;
    var dataObj:Object = evt.itemRenderer.data;
    if (dataObj.hasOwnProperty("@src")) {
    swfLoader.source = dataObj.@src;
    } else if (t.dataDescriptor.isBranch(t.selectedItem)) {
    swfLoader.source = null;
    panel.status = "";
    private function tree_labelFunc(item:Object):String {
    var suffix:String = "";
    if (tree.dataDescriptor.isBranch(item)) {
    suffix = " (" + item.children().length() + ")";
    return item.@label + suffix;
    private function swfLoader_complete(evt:Event):void {
    panel.status = (swfLoader.bytesTotal/1024).toFixed(2) +
    'KB';
    ]]>
    </mx:Script>
    <mx:XML id="dp" source="data/dp.xml" />
    <mx:HDividedBox width="100%" height="100%">
    <mx:Panel width="200" height="100%">
    <mx:Tree id="tree"
    dataProvider="{dp}"
    labelFunction="tree_labelFunc"
    showRoot="false"
    width="100%"
    height="100%"
    itemClick="tree_itemClick(event);" />
    </mx:Panel>
    <mx:Panel id="panel"
    width="100%"
    height="100%"
    backgroundColor="white">
    <mx:SWFLoader id="swfLoader"
    scaleContent="true"
    width="100%"
    height="100%"
    complete="swfLoader_complete(event);"/>
    <mx:ControlBar>
    <mx:LinkButton label="{swfLoader.source.toString()}"
    />
    </mx:ControlBar>
    </mx:Panel>
    </mx:HDividedBox>
    </mx:Application>

  • Can't stop music in loaded swf

    I have used Loader to load an swf which has looping music.
    When I call unload - the music keeps playing.
    Could someone please help me?
    Code below:

    Thankyou. When I say SoundMixer.stopAll(); I get the
    following error message
    1120: Access of undefined property SoundMixer.
    I have added these 2 statements at the top of my package:
    import flash.media.Sound;
    import flash.media.SoundChannel;
    Any help is appreciated.
    As for the alternative method, if the loaded movieclip has a
    single-frame event wav file (set to repeat on a single frame in the
    timeline) what is the correct path to the loaded swf's sound
    instance?

  • Can you enumerate exported symbols in a loaded SWF?

    We have a number of SWFs that we use as asset libraries.  These SWFs each contain a bunch of statically exported symbols.
    I'm trying to make a tool to help catalog our assets.  I want the tool to be able to load these library SWFs and extract a list of all the exported symbols each contains.  Is that possible to do?  I can't find a way to enumerate or iterate over the exported symbols in the application domains of the loaded SWFs.
    (I could swear I saw an example of doing this in documentation somewhere, but now I can't find it... I'm wondering if I dreamed it, or misinterpreted some other example.)
    I'd be game for doctoring up the library SWFs in some way, e.g. make them use some custom helper class as their document class, if that would help.

    A friend of mine and I came to this post hoping to be told how to do it, after getting just "use jsfl" we set off on our journey to learn a bit about it.
    After an hour, we did it!... Kinda. Thanks for suggesting jsfl.
    So in CS5, we go File > New > Flash JavaScript File
    Then we looked at some jsfl docs ( http://help.adobe.com/en_US/Flash/10.0_ExtendingFlash/WS5b3ccc516d4fbf351e63e3d118a901b0bd -8000.html) tried and tried, looked at the docs some more, tried some more and eventually came up with this script:
    var doc = fl.openDocument("file:///PutFilePathHere/YourFlashFilesName.fla");
    var itemArray = fl.getDocumentDOM().library.items;
    var iLength = itemArray.length;
    fl.trace(iLength.toString());
    fl.outputPanel.clear();
    for(var i = 0; i < iLength; ++i)
        if(itemArray[i] == "[object SymbolItem]")
            var str = itemArray[i].name;
            var iLastIndex = (str.lastIndexOf("/"));
            if(iLastIndex > -1)
                str = str.slice(iLastIndex+1);
                fl.trace(str);
    fl.outputPanel.save("file:///PutFilePathHere/ExportedSymbols.txt");
    And yay! A text document filled with all the symbols in in the library. Ok, ok, it's not perfect because it includes symbols that weren't marked as "export for actionscript 3" which is what we initially wanted, but we're either going to perfect it or just deal with it and put identifiers on our LinkageNames (like EX_Tree, EX_Fire for exported to as3 symbols, and just leave the other symbols alone).

  • Using embeded fonts in loaded swf.

    I have a .Swf, which has 3 fonts embedded in it, they are all exported in frame 1 for AS.  This swf loads any number of external .swfs which have dynamically generated textfields inside of them.  This text must be embedded text because effects may be applied to them.  I do not want to embed the three fonts into every external swf, and do not think I should have to.  The font exists in the Loading swf and I have registered the fonts to the global font list.  If I print this list from the loaded swf, all three fonts are present, but when I try to use any of them, my textfiels are empty.
    My question is how do I utilize a font which is embedded in a swf, from a swf which has been loaded into that swf?
    From my external swf, this code:
    [PHP]var embeddedFonts:Array = Font.enumerateFonts(false);
    embeddedFonts.sortOn("fontName", Array.CASEINSENSITIVE);
    trace(embeddedFonts);[/PHP]
    produces the following:
    [PHP][object CenturyBook],[object MyriadProRegular],[object MyriadProItalic][/PHP]
    which are the three fonts that are embedded in the loading swf, So I assume the LOADED swf has access to these fonts.
    When I apply this code to the externally loaded swf:
    [PHP]var FontClass:Class = getDefinitionByName("MyriadProRegular") as Class;
    trace("FontClassInstance -> " + FontClass.toString());
    var linkedFont: Font = new FontClass();
    trace("Font name: " + linkedFont.fontName);
    var textFormat: TextFormat = new TextFormat(linkedFont.fontName, 14);
    //... The next lines set up the text box and apply the format.  I am sure this is done correctly.
    [/PHP]
    I get the following output:
    [PHP]FontClassInstance -> [class MyriadProRegular]
    Font name: Myriad Pro[/PHP]
    which is exactly what I would expect.  Yet, my text box is still blank.  I have embedText = true on the text box, and have applied a string to the "text" property, so it's nothing silly liek that.
    Any help would be appreciated...

    You may also want to look at the various embedded font format issues. Many of the Flex 4 components use a newer embedded font fortmat, which is not the same as the one generally used in Flash. So even if ther Flash font gets registered properly, it still may not work with some of the spark components.
    You should be able to create a swf using Flex that contains fonts embedded in either format, which can then be used in the way you describe, though, since Flex 4 suports both font formats.
    Hopefully, someone else will jump in here if I got some of this wrong.
    -JM

Maybe you are looking for

  • Hard drive freezes, can no longer be accessed. running off USB hard drive..

    Here is a good one for you. My 15 month old MacBook suddenly froze and died while watching a movie (had seen the movie before). Hard drive would not mount anymore, so in order to run at all I had to reinstall Tiger on my 40 GB USB memory as a last re

  • JDBC to Mail scenario with XSLT mapping

    Hi all, I am working on JDBC to Mail scenario. We have to pick the data from Oracle system and mail has to be sent with an attached Excel file. I am doing this scenario by using of following blog. eMail Report as Attachment (Excel/Word) I am getting

  • How do I delete a locked photo on my iPad?

    Days ago I connected my Mac Book Pro to a customers iPad, via the iPad cable, and inadvertently some of my pictures went to his iPad. I tried to delete them but when I open the images there is no trash can nor any other meens to erase the picture, wh

  • Avg_row_leng in dba_tables

    Hi Can somebody answer my querries Is "avg_row_len" in dba_tables is in Bytes if not then what is its units ??? Will "avg_row_len"*"num_row" give table physically occupied space in terms of bytes in a tablespac ??Thanks in advacne Bye KVSS

  • HT1414 'Restore iPhone in Recovery' iPhone 4 has lost all my music.

    After following the 'Restore iPhone in Recovery mode' instructions and resettiong all setting my iPhone 4 has lost all my music.  It is in ICloud on home Mac desktop but cannot find how to re import it to my phone. Please help.