Accessing Child Dynamic MovieClips

Dev Environment: Flash 9 Pro
Alright, I have a movie that has one movieclip (imageHolder,
this is defined in the Library and is an empty movieClip used as a
place holder) which is on the stage. I read in and load images to
the flash file, and create them in their own movie clips WITHIN
imageHolder like so:
========================
var nm= imageHolder.createEmptyMovieClip("swfHolder"+i,-(i *
10));
nm.loadMovie(filename);
========================
Obviously this is a code snippet, I am using the LoadVars
object to load these files. Once everything is loaded, it is
displayed on the stage, with a depth in order from first image to
last (first image on top, last image on the bottom). After this, I
have an interval set, to call a function called "selectImage" which
gets a variable called photonum, and changes images to the number
you have passed in. In selectImage, I ensure that the image that is
coming up next is one depth level below the currently displayed
image using swapDepths, and I am constantly incrementing a variable
called "curdepth" which is global, and always assigning that depth
to the currently displayed image to that depth. So, the current
image will be displayed at depth 30, and the next image up will be
displayed at depth 29. Then I fade the current image out using the
tween object, and it works like a charm! To reference these
MovieClips I use the following code:
====================
var cmc:MovieClip = eval("imageHolder.swfHolder" + (curpho +
1));
var nmc:MovieClip = eval("imageHolder.swfHolder" + (nexpho +
1));
// Force current clip to front
cmc.swapDepths(curdep);
// Force next clip to one below front
nmc.swapDepths(curdepth - 1);
====================
and this works perfectly... in flash. Once it's on the page,
or displayed within the standalone movie player, everything goes
south. I assigned the typeof cmc and nmc to a textbox, and i got
"movieclip", in flash and on the page. However, if I store
"cmc.getDepth()" to the textbox, I get "[type function]" in flash,
but, on the page "undefined" It seems anything that is specific to
the MovieClip object, such as getDepth(), or swapDepths() is
undefined when I plug it into the textbox, but, things that are
inherited, such as enabled, _x, or _y are all available for my
perusal and setting.
Does anyone have any idea how to remedy this? I can attach
all my code in a couple of hours if necessary. I have tried not
putting the loaded images into the imageHolder, and I found that
didn't help. I have also tried a combination of adding "_level0."
and "_root." to my cmc and nmc references to no avail. Any help
would be greatly appreciated.

Seems it had something to do with my Flash Installation...
Tried it on another computer and everything was fine. What a
pain!

Similar Messages

  • Accessing Dynamic Movieclip Children

    There is a lot of code that I have but here is snippet to get to the point.  I have created a Movicelip called via actionscript called "McButton".  Then I created 10 MovieClips within that MovieClip ("McDot0", "mcDot1", etc).  I need to know how to access mcButton.mcDot3 to change its color when button3 (mc already on stage) is clicked but can not figure it out.
    I have tried both of these below but it does not work:
    mcButton.mcDot3.transform.colorTransform = cityColor;
    getChildByName("mcButton").getChildByName("mcDot3").transform.colorTransform = cityColor;
    This is the code below that I have used to create the Dynamic Movieclips:
    var button:Container = new Container();
    button.name = "mcButton";
    this.addChild(button);
    for (var a:int = 0; a < 10; a++) {
         var dot:Dot = new Dot();
          dot.name = "mcDot" + a;
        MovieClip(getChildByName("mcButton")).addChild(dot);
    Can someone please help me see the light.
    Thanks

    In order to change a color using color transform, first you must create a new ColorTransform object and than assign it to transform.colorTransform property.
    i,e,
    var cityColor: ColorTransform = new ColorTransform();
    getChildByName("mcButton").getChildByName("mcDot3").transform.colorTransform = cityColor

  • Error while accessing Child Form process info

    I've created my Process task Adapter and attached it to "AD User" Process Definition.
    When I try to retrieve information about AD Groups from the child form of UD_AD_USER (form named AD_RSC), I get the following error:
    ERROR,28 okt 2007 15:08:26,765,[XELLERATE.DATABASE],select obi_key, UD_ADUSER_VERSION from UD_ADUSER where obi_key=5
    java.sql.SQLException: ORA-00904: "OBI_KEY": invalid identifier
    the problem is that there's NO field named OBI_KEY in the standard UD_ADUSER table.
    The same thing happens when I'm trying to access child form data through Xellerate API
    ( getChildFormDefinition(long plParentFormDefinitionKey, int pnParentFormVersion) or getProcessFormChildData(long plChildFormDefinitionKey, long plProcessInstanceKey) )
    is it some king of bug? I haven't found anything at metalink :(

    I have no issues getting child table information using the APIs... I am doing it on both 9.0.1.X versions and 9.0.3.X versions. I would suggest looking at how you are getting the process keys.. (i.e., are you mapping it in through the adapter, getting it from findObjects, etc)... and also look at your configuration of the child tables and make sure everything is active and kosher.
    If you post the rest of your code, I might be able to help you.
    Cheers,
    Deborah

  • Access/set dynamic configuration in client/server abap proxy

    Hi,
    I have 2 question regarding reading/setting dynamic configuration in ABAP proxies:
    1) Is it possible to set dynamic configuration objects in a server abap proxy (SAP --> XI)?
    When looking at the class CL_PROXY_FRAMEWORK is looks as if it is possible. This class has en attribute IF_XMS_MAIN~DY which is a reference to the class CL_XMS_MSGHDR30_DYNAMIC.
    I'm not sure if I'm supposed to try and access the dynamic configuration objects via this class or if I'm supposed to use the GET_PROTOCOL method in some manner as suggested by:
    http://help.sap.com/saphelp_nw04s/helpdata/en/51/d5cd16235e4643ae8ec92395c4ad97/frameset.htm
    Above link is for client proxies not server, and I've been unable to find any documentation on this for server proxies.
    2) The same question goes for server proxies (XI --> SAP), though now I would like to set some dynamic configuration data.
    This I believe should be done using get_protocol( if_wsprotocol=>ws_header ) as indicated by before mentioned link.
    However in both cases I'm not sure of if it is indeed possible and which road to choose for sure. So a hint or 2 would be really nice.
    Best Regards,
    Daniel
    ps. maybe I should just mention that I am pretty new to the ABAP world, so bear with me.

    The link that you gave does give you an example for both server and client proxies:
    Accessing Protocol Classes for Client Proxies
    In client proxies, you access the protocol class by using the GET_PROTOCOL method. Below is an example for the IF_WSPROTOCOL_PAYLOAD protocol:
    DATA:
    lo_clientProxy      TYPE REF TO co_clientProxy,
    lo_payload_protocol TYPE REF TO if_wsprotocol_payload
    lo_payload          TYPE REF TO if_ws_payload.
    CREATE OBJECT lo_clientProxy.
    Get Protocol Class Using Method GET_PROTOCOL
    lo_payload_protocol ?=
           lo_clientProxy->get_protocol( if_wsprotocol=>payload ).
    CALL METHOD lo_clientProxy->execute_synchronous
                EXPORTING output  = ls_request
                IMPORTING input   = ls_response.
    Use Protocol Methods
    lo_payload = lo_payload->get_sent_request_payload( ).
    Accessing Protocol Classes for Server Proxies (XI Only)
    Within the implementation of a server proxy, you get the protocol class by using the CL_PROXY_ACCESS=>GET_SERVER_CONTEXT( ) method:
    DATA:  lo_server_context   TYPE REF TO if_ws_server_context,
           lo_payload_protocol TYPE REF TO if_wsprotocol_payload.
    lo_server_context   = cl_proxy_access=>get_server_context( ).
    lo_payload_protocol =
         lo_server_context->get_protocol( if_wsprotocol=>payload ).

  • PI 7.1 Access to Dynamic Configuration through Java Class

    My Current scenario involves IDCO -> FILE communications in PI 7.1 using XSL where the file name is dynamic.
    I have attempted calling a Java Class from XSL with the use SAPXMLTOOL kit option set in the adaptor and it works but I need to be able to call the transform method
    public void transform(TransformationInput arg0, TransformationOutput arg1)
    from XSL so I can access the message and update the File Name via Dynamic Configuration.
    Whilst I can call a static class with in the object I can not call transform with the correct arguments (arg0, arg1). I need access to arg0 (payload) to set/figure out the filename. I can calculate the filename in XSL and pass it to the Java but in a static method it is useless as it need to access the arg0 which is a object and obviously non-static context.
    Is this possible ? How do I get access to Dynamic Configuration from XSL through Java in 7.1 ?
    I have successfully called a static method but that is no help.
    Thanks in advance.

    Suraj,
       Unfortunately you link isnt operational but thankyou anyway, I have managed to call as Java class as per my original post, but a static method does not allow me to get a handle to the Dynamic Configuration Variables in the message.
    It seems importing the 7.0 LIBS may be an option and Im not entirely sure I have that option.
    It certainly isnt possible to use the JDK5 XML implementation to even call a static method on an Java OBJ from XSL (obviously the USE SAPXMLTOOLKIT option is there for a reason).
    I think and again I could be wrong but direct access via XSLT..
    LINK:http://help.sap.com/saphelp_nwpi71/helpdata/EN/e2/e13fcd80fe47768df001a558ed10b6/frameset.htm
    Is what Im looking for, I shall report back success or failure but the doco seems to fit the bill. Im not sure why I wanted to instatiate a sperate Java class when it can all exist in the XSLT.

  • Access .swf in MovieClip

    Hi,
    I have to access different frames from swf file in flex.means
    when mouseover on canvas it should load frame 5.I know through
    movie clip i can goToPlay particular frame.But how can I access swf
    through movieclip.
    Thanks,
    Megha

    Store the swf file in the src/mimes/Components directory
    Retrieve the URL of this file using
    WDURLGenerator.getResourcePath(wdComponentAPI.getDeployableObjectPart(), YourCompView.FILE_NAME)
    and store this URL in a context attribute
    Bind the IWDIFrame 'source' property with the stored URL context attribute, and set the iFrame's 'lifeCycle' property to 'uielement' in order to prevent refresh of the content during server roundtrips
    Upon clicking the button, you can show/hide the iFrame and thus enabling your swf file

  • How to access child movieclip info of an object in an array?

    Hi
    I've dynamically created a whole bunch of movieclips.
    I've given each clip a name based on a variable number:
         mc.name = "mc"+i;
    I've also use addChild to add a couple of dynamic text fields to each movieClip, named myText1 and myText2.
    I then push each movieClip object into an array:
         myArray.push(mc);
    When I addChild the movieClips, they display fine, complete with each textField.  And if I use the following loop to trace the name of each clip in the array, I get:
         for(var i=0; i<myArray.length; i++)
                   trace(myArray[i].name);
    output:
         mc1
         mc2
         mc3
         mc4
    etc
    What I want to now is be able to access the text fields within each movieclip in the array.  However, I am getting errors when I try different ways.  For example:
         for(var i=0; i<myArray.length; i++)
                   trace(myArray[i].myText1.text);
    gives the error: A term is undefined and has no properties.
    How do you access the values and contents of the children of movieClip objects that are stored in arrays?
    Thanks
    Shaun

    For whatever reason, dynamically added children cannot be targeted that way.  If you added the textfields dynamically you may need to use getChildByName() to target them.  It partly depends on how you created them and whether or not you have direct access to them.  Aside from that you could also assign the textfields to variables that you create for the mc and target those by their variable names.
    The following demos these two approaches:
    var mc:MovieClip = new MovieClip();
    addChild(mc);
    var tf:TextField = new TextField();
    tf.text = "this is text";
    mc.addChild(tf);
    // first way
    tf.name = "tfield";
    trace(TextField(mc.getChildByName("tfield")).text);
    // second way
    mc.tfid = tf;
    trace(mc.tfid.text);
    You could also store the textfields in arrays as they are created and have direct access to them with out the need to target the mc... the index should be the same as that which you use for the mc anyways.

  • Why can access the dynamic textField inside a Button?

    yep, I have another problem
    I create a button in the library, it has a background graphic
    on a layer and a textField, the textField has a instance name
    defined in the properties panels and some text. I manually place
    some instance of the button on stage, I give them different
    instance names and voilà a new problem arise
    when with actionscript I try to assign a new text to the
    textField inside a button it throws me error 1119. A quick look at
    the menu option debug ->list objects, shows me that the instance
    name of the textField inside the button it is not what I defined
    but it was replaced with some random name like "instance66"
    I did a test with a movieclip instead of a button and I can
    correctly access my textField with the instance name that I
    manually defined.
    Why that can be the same with the button? And if for some
    arcane reason cant be possible to access a manually defined
    instance inside a button WHY flash give me the possibility to give
    an instance name to a dynamic textField inside a button?

    Buttons simply do not have the same properties and methods
    that movieclips have. Anytime you want to create a button that has
    anything beyond the simple 3 states of activity, use a movieclip.
    I can't answer why flash allows you to give an instance name
    to the textfield, but in any case, it won't allow you to use
    it.

  • How to Access the Dynamically created form element

    Hi friends,
    I have generated a dynamic form in flex using xml and i want to save the all the elements of the form with there label and entered data in the formItem.
    so i m getting how to save the data.
    anybody have idea about this?????
    Thanking you
    Gajanan

    Thanks for your reply.
    as u said i have done this
    for each(var formItem:FormItem in form.getChildren()){
                            formItem.label //The FormItem's label's text
                            formItem.getChildAt(0) //The first child - TextInput, ComboBox or whatever you got
                            Alert.show(formItem.getChildAt(0).toString());
                            return;
    my first child formitem is TextInput and i entered some value in tat textInput but i m printing this i m getting the "dynamicform.ApplicationSkin3._ApplicationSkin_Group1.contentGroup.grp.Form0.FormItem15.txt studentfname"  i m getting this output
    i want to access the entered value of in the textInput.
    Thanks,
    gajanan

  • Problems accessing child swf from parent class

    First off: Hi. I'm new - to the forum and to Flash.
    I'm currently writing a flash app that requests a XML feed
    from a Java controller and loads child swfs into various parts of
    the stage based on the settings/URL details received from the XML
    feed.
    Its nearly there and I've got my head round a couple of weird
    things, but theres one thing left that I've found impossible to
    solve. Once the loader class has loaded the swf, it can't access
    its methods or set its variables and the child can't access the
    parent either (or access the parent's variables full stop). From
    what I've read this should be possible. Heres some of my code plus
    pseudo code:
    Note the Panel class is not linked to a symbol and uses
    composition to act like a movie clip, rather than inheritance.
    quote:
    class Panel{
    function Panel(owner:MovieClip, insName:String,
    depth:Number){
    initiates properties etc....
    panelMovie = owner.createEmptyMovieClip(insName,depth);
    listener.onLoadComplete = mx.utils.Delegate.create(this,
    scheduleModule);
    loader.addListener(listener);
    loader.loadClip(moduleX.url, panelMovie);
    function scheduleModule(){
    trace(panelMovie.key);
    trace(panelMove.keyTest());
    panelMovie.key = "dave";
    trace(panelMovie.key);
    Child swf:
    quote:
    var key:String = "test";
    As you can see I create an empty movieclip which I store a
    reference to in this class under the field "panelMovie". I then use
    this (instead of target_mc like you might do with an event handler)
    to try to access the child swf. The output is:
    trace(panelMovie.key); = "test" (Works fine)
    trace(panelMove.keyTest()); = (Nothing returned)
    panelMovie.key = "dave";
    trace(panelMovie.key); = "test" (Previous line = no effect)
    Is this something related to using a class? Really would be
    preferentially to keep all code outside of the fla.
    I've also tried a lot of different combinations of _root,
    _parent and _levelx. None of which I truly understand.
    Any help would be much appreciated! Plus any good tutorial
    links on timeline and referring to objects in it!
    (Couldn't find the code tag/button...)

    >>trace(panelMove.keyTest()); = (Nothing returned)
    You have panelMove here instead of panelMovie
    Dave -
    Head Developer
    http://www.blurredistinction.com
    Adobe Community Expert
    http://www.adobe.com/communities/experts/

  • Dynamic MovieClip (Loader) Names

    I have an array of data that I'm using to create thumbnails and labels.  I'm using "Loader" to load the thumbnails (sample code below) but what I'm wondering is how I can make the name of the loader dynamic so that each child gets named "image1, image2, ...".  I tried adding "[i]" after the "image" for each item in the code but it complained about missing semicolon before left bracket.
    var image:Loader = new Loader();
    var target_image:URLRequest = new URLRequest("images/" + xmlData.Product[i].id + ".png");
    image.name = "image_"+[i];
    image.load(target_image);
    image.x = 80;
    image.y = 60;
    addChild(image);
    I saw an example for MovieClip which looks like it's exactly what I want to do but it doesn't work for Loader (and I don't know if it works at all).  In the example I saw, the last line in the above code would be:
    image.addChild(this["image"+i]);
    Also, if I can't make the names of the loaders dynamic, how would I add event listeners to each of the thumbnails so that when one is clicked it executes code specific to that particular image (such as open up a large version of it).  Usually you have the listeners linked to the names of the children, but if you have 10 children named "image" then that makes it a bit tough.
    Any help would be greatly appreciated.  Thanks!

    you can do any one of a few things.  the two most commonly used techniques:
    1.
    var mc:MovieClip=new MovieClip();
    addChild(mc);
    mc["image"+i] = new Loader();
    var target_image:URLRequest = new URLRequest("images/" + xmlData.Product[i].id + ".png"); mc["image"+i].load(target_image);
    mc["image"+i].x = 80;
    mc["image"+i].y = 60;
    mc["image"+i].ivar = i;  // probably needed at some point
    mc["image"+i].whateverProperty = whatever;  // this is the most flexible technique
    mc["image"+i].addEventListener(MouseEvent.CLICK,clickF);
    function clickF(e:MouseEvent){
    //do something with e.currentTarget.ivar
    //do something with e.currentTarget.whateverProperty
    2.
    var image:Loader = new Loader();
    var target_image:URLRequest = new URLRequest("images/" + xmlData.Product[i].id + ".png");
    image.name = i;  // this is more useful than the name you were using
    image.load(target_image);
    image.x = 80;
    image.y = 60;
    addChild(image);
    image.addEventListener(MouseEvent.CLICK,clickF);
    function clickF(e:MouseEvent){
    //do something with e.currentTarget.name
    //you can do most things with the above but this can sometimes be awkward.

  • Call function, pass value, access variable in movieclip class from main stage

    i am new to flash as.
    I got quite confused on some problems. as the function here
    is quite different from c and asp.net.
    I have a movieClip named MC, and it's enabled with action
    script, with the class name MC_Rectangle
    and a Stage.
    I override the MC_Rectangle class file in a mc_rectangle.as
    external file.
    here is the code:
    package{
    import flash.display.*;
    import flash.events.*;
    public class MC_Rectangle extends MovieClip {
    var sequence:int = new int();
    function setSequence(data:int):void{
    sequence = data;
    function addSequence():void{
    sequence ++;
    I have new a object in the main stage var
    mc_rect:MC_Rectangle = new MC_Rectangle()
    question:
    in main stage:
    1. how can i access the variable "sequence" in "mc_rect"
    2. how can i pass parametre from main stage to mc_rect via
    function setSequence(data:int)?
    3. how can i call the function in addSequence() in mc_rect.
    in asp.net, i usually use mc_rect.sequenct,
    mc_rect.setSequence(data), mc_rect.addSequence() to achieve my
    goals......
    btw, can function in mc_rect return out result to main stage?
    thanks in advance.

    Your as-file must be named MC_Rectangle.as (same upper/lower
    case as in the Class name)
    Ad 1) You have to declare sequence as a public property
    "public var sequence;" or - better - define a getter-function for
    sequence.
    Ad 2) mc_rect.setSequence(8); e. g. (you must write "public"
    in the Class-declaration of setSequence)
    Ad 3) mc_rect.addSequence(); e. g. (you must write "public"
    in the Class-declaration of addSequence)
    ... and yes, your methods can return a value: Replace "void"
    with the proper data type (int, String, ...) and place a "return
    myNumber;" or the like in the method's body.

  • Problem accessing child object and changing its appearance (color)

    For a program, I need to be able to access a child object (in this case a box) after adding it to a transform group and change its appearance, for example the color of its top face. I have included a small code example to show my problem. The box is the only child I have added to the TransformGroup, but when I call getChild(), it returns a node, and thus I can't then call getShape() to get the top face and change its appearance. What am I doing wrong?
    public BranchGroup createSceneGraph() {
         BranchGroup objRoot = new BranchGroup();
         Transform3D rotate = new Transform3D();
         Transform3D tempRotate = new Transform3D();
    rotate.rotX(Math.PI/4.0d);
         tempRotate.rotY(Math.PI/4.0d);
    rotate.mul(tempRotate);
         TransformGroup objRotate = new TransformGroup(rotate);
         objRoot.addChild(objRotate);
         Appearance ap = new Appearance();
         Appearance app = new Appearance();
         Appearance apr = new Appearance();
         ColoringAttributes colr = new ColoringAttributes();
         ColoringAttributes colg = new ColoringAttributes();
         colr.setColor((float)1, (float)0, (float)0);
         ap.setColoringAttributes(colr);
    colg.setColor((float)0,(float)1, 0);
         apr.setColoringAttributes(colg);
         Box box = new Box((float)0.4, (float)0.4, (float)0.4, app);
         box.getShape(4).setAppearance(ap);
         objRotate.addChild(box);
         objRotate.getChild(0).getShape(4).setAppearance(ap);
    objRoot.compile();
         return objRoot;
    }

    It would help if you gave us the following System information:
    Operating System/version
    Photoshop version number
    Amount of RAM installed
    Hard drive(s) capacity
    Make and model number of video card
    Also try resetting your preferences as described in the FAQ.
    http://forums.adobe.com/thread/375776?tstart=0
    You either have to physically delete (or rename) the preference files or, if using the Alt, Ctrl, and Shift method, be sure that you get a confirmation dialog.
    This resets all settings in Photoshop to factory defaults.
    A complete uninstall/re-install will not affect the preferences and a corrupt file there may be causing the problem.

  • Tree Control Property Node for Accessing "Child Text" String Array

    When adding items to a tree control using the EditTreeItems invoke nodes, the inputs include "Child Tag", "Item Indent", "Child Only?", "Glyph Index", "Child Text", and "Left Cell String" as can be seen in this screenshot.
    There are property nodes for the tree control for accessing each of these elements, except for the "Child Text", which is an array of strings. It is possible to access this data as outlined in this forum post, but this method is somewhat involved and round about. 
    I suggest that a property for the Tree class be created to access the Child Text array directly.

     The work around only works if you do not have an empty string element some where in the middle.
    At lest could the "Active Celltring Property" read return an error when you have gone beyond the end of the array.

  • How to connect Access database Dynamically

    Hi,
    I want to make connection to Access database with java with dynamically. I know to make connect to database in the following way:
    This way, I go to setting->controlPanel->Administrative tools->ODBC & then i select database & i use following code"
    public void  databaseconnect(){
        try{
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
          connection =  DriverManager.getConnection("jdbc:odbc:student");
          output.append("Connection Successful\n");
        catch(ClassNotFoundException cnex){
          cnex.printStackTrace();
          output.append("Connection Unsuccessful\n"+cnex.toString());
        catch(SQLException sqlex){
          sqlex.printStackTrace();
          output.append("Connection unsuccessful\n"+sqlex.toString());
            catch(Exception ex){
              ex.printStackTrace();
              output.append(ex.toString());
    }But now i want to know the way to make connection to database dynamically. How this is possible? I want to make connection to database without selecting database from the Administrative tool? Is there anybody can help me?
    With regards
    Bina

    http://faq.javaranch.com/view?OdbcJdbcQuestions

Maybe you are looking for