How to control dynamically created symbols

Hi, I'm new on board, but thanks to adobe forum which helped me a lot.

I try to use ".createChildSymbol" to my library symbols to my stage. Each symbol, so I have a label OUT, whenever a new symbol is called by a particular button, the last of them is played and new label appears in the same place.

It is easy for the two symbols, and I did not need to put any drive for them. But I nearly 180 symbols and a menu of buttons to call them, so each button must play OUT the current symbol label and also plays a new and do it like the current one.

I would really appreciate if someone help me to solve this problem.

SYM.test = sym.createChildSymbol ("test", "Stage");

sym.getComposition () .getStage () .setVariable ("current", "test");

class var = sym.getComposition () .getStage () .setVariable ("current");

sym.current.getSymbolElement () .css ({position: 'absolute', display: "inline-block", top: 167, left: 91 "});

Here are the files of project edge of what I did.

PMFR

* edit * notice the code in the following locations:

Stadium/compositionReady

-Panel actions inside each button symbol

-Relaxation after the SORTIE_TANGENTIELLE label within the symbols of animations (options1 / option1a_ *)

Tags: Edge Animate

Similar Questions

  • How to get a dynamically created symbol delete itself-click?

    Here is the configuration...

    I want to have a dynamically created symbol to appear on click of a hotspot. In this case, you click on a thrilling hotspot and a popup appears.

    Here is the code I use for this.

    Create an element in the instance of a symbol as a child of the given parent item

    var mySymbolObject = sym.createChildSymbol ("gardern_toxins_popup", "stage");

    So we have the symbol 'garden_toxins_popup' in my library placed dynamically on the page. I would like to assign an action to the pop-up itself which allows you to remove the symbol from the stage to click.

    I feel stupid for not be able to understand this. I tried iterations of this piece of code...

    Download the scene compared to the level of the composition, get the symbol

    sym.getComposition () .getStage ().getSymbol("garden_toxins_popup").delete ();

    .. .but it does not work.

    So I tried to think as if I was back in Flash and tried the following...

    this.parent.removeChild (this);

    But no joy on that as well. Is there something that I have not touched on in this logic, or I go about it the wrong way? Thank you!

    Sorry I meant: sym.deleteSymbol ();

    In symbols, you must:

    sym.getComposition () .getStage () .play (0);

    sym.deleteSymbol ();

    You can see all the code in the code window.

  • iframe on a dynamically created symbol

    Hello

    -J' have a button that creates a dynamically. That's ok

    - then I pass this symbol with TweenMax. It's Ok, I tested it.

    - and finally, I want to load an external URL in this symbol. It does not work.

    The problem is, I think, that I n 't know how to approach this dynamically created symbol.

    This is my code:

    externalURL var = "portfolio/FFD.html";

    var mywrapper = $(sym.createChildSymbol("wrapper","Stage").getSymbolElement ());

    var wrapperMove = TweenMax.to (mywrapper, 2, {css: {top: "2500", left:"0"},ease:Sine.easeOut});}})

    SYM. $("mywrapper") .html ("< iframe src ="+"externalURL + height = 100% width = 100% > < / iframe >");

    Thanks for any help

    Hi Joel

    It worked like that...;

    var mywrapper = sym.createChildSymbol ("wrapper", "Stage");

    var wrapperMove = TweenMax.to (mywrapper.getSymbolElement (), 2, {css: {top: '2500px", left:"0px"},ease:Sine.easeOut});}})

    mywrapper.getSymbolElement () .html ("");

    Somehow it didin'tt as the externalURL variable... don't know why...

    I got to understand it.

    Thanks for your help

  • Get the ID of a dynamically created symbol library, inside another symbol.

    Hello world

    I'm trying to get the id of a dynamic created symbol library.

    When you dynamically create the symbol directly on the stage (or the level of the composition), there is no problem.

    But I can not function when you create the symbol inside another symbol.

    A few examples using 'getChildSymbols()' and 'aSymbolInstances '.

    // USING "getChildSymbols()" /////////////////////////////////////////////////////////////////////////

    ON THE STAGE

    var m_item = sym.createChildSymbol ("m_item", "Stage");

    var symbolChildren = sym.getChildSymbols ();

    console.log (symbolChildren [0] .getSymbolElement () .attr ('id')); / / ok eid_1391853893203

    / / Inside a SYMBOL OTHER

    var m_item = sym.createChildSymbol ("m_item", sym.getSymbol("holder").getSymbolElement ());

    var symbolChildren = sym.getSymbol("holder").getChildSymbols (); / / I use this maybe wrong?

    console.log (symbolChildren.Length) / / returns 0 if can't ID is

    ' USE 'aSymbolInstances "".

    ON THE STAGE

    var m_item = sym.createChildSymbol ("m_item", "Stage");

    console.log(sym.aSymbolInstances[0]); / / ok (I guess) x.fn.x.init [1] 0: #eid_1391854141436 div

    / / Inside a SYMBOL OTHER

    var m_item = sym.createChildSymbol ("m_item", sym.getSymbol("holder").getSymbolElement ());

    console.log (sym.getSymbol("holder").aSymbolInstances [0]); / / Error Javascript in the event handler. Type of event = element

    In this post http://forums.Adobe.com/message/5691824 is written: "mySym.aSymbolInstances will give you a table containing all the 'names' when you create symbols"

    Would be - this only works on the scene / composition level only and not inside a symbol?

    The following methods to obtain the same are indeed possible, but I do not simply want to use them in this case:

    (1) storing a reference to the symbol created in a table and call it later by index.

    (2) giving the elements an ID manually on the creation and use of document.getElementById () thereafter.

    I can't believe that this is not possible. I am probably missing something here.

    Forgive me that I am a newbie using Adobe Edge!
    I really hope that someone can help me here.

    Anyway, thnx in advance people!

    Kind regards

    Lester.

    OK, I solved my problem by using the (simple) code below.
    I guess that 'getChildSymbols()' and 'aSymbolInstances' only works on stage / level of the composition.

    Just thought I'd share this to everyone. Peace!

    var m_item = sym.createChildSymbol ("m_item", sym.getSymbol("holder").getSymbolElement ());

    $.each (sym.$("holder").children (), function (index, obj) {}

    Console.log ($(sym.$("holder").) ([Index] Children()) .attr ('id'));

    });

  • address dynamically created symbols

    I don't know what is the best way to deal with a specific symbol dynamically created because I don't see in the dashboard API in any way to get the name of the symbol instance. The method . getSymbol() would be the best way to do it, but it takes the name of "instance" symbol and I don't know which one it is. When I use . createChildSymbol() I just pass the name of 'type' symbol and the name of the element parent to put inside but nothing about the symbol instance name that is created. The method . getChildSymbols() doesn't help much because it gets "all" direct children instances are, and I have more of an and of different types.

    I need to get one specific symbol among others that I created dinamcally, so how do I do it better?

    I think on the use of . getChildSymbols() and loop through them all, get the DOM of each symbol with . getSymbolElement(), then use the "class" attribute to at least identify the different types of symbols children recovered. I now have a subset of the children-brothers (symbols of the same type class =) and I can walk through them. At this point, my only hope to distiguish them is the setting of index-z I spent when I created the symbols using the . createChildSymbol().

    Another option would be to 'save' the manager returned to each symbol created with . createChildSymbol() in an object like this {symbol: handler, name: 'no name', created: ' date/time',...} and save them in an array of objects.

    All the best ideas?

    I found something in http://www.edgedocks.com/edgecommons#anchor_edgecommons_21. This guy did a getSymbolName function, which is exactly what we need to solve this problem.

  • Time of design and of the dynamically created controls

    I have a project written in VC6 as a project of the MFC dialog box. In a particular area, I dynamically create several (the exact number depends on user input) CNiGraphs. There is also a two CNiButtons that were created at design time using the resource editor. The problem I have is that when this dialog box is open, a message appears saying it is an eval version and the control will go off after 5 minutes. After 5 minutes of waiting, the CNiButtons 2 go inactive (black tower), but the continuous CNiGraphs of work. I have a valid license of MStudio 8.1.6, version but it seems that these 2 buttons do not recognize the license. There are also other buttons from the moment of conception of the project, but these have no problem at all. When you create the dynamic creation of the CNiGraphs, give them a valid license string, and I was wondering if there is a problem with the time created and dynamically controls created in the same dialog box to design. Anyone know?

    I don't remember, but I can have created these 2 CNiButtons when I was with only an eval license. (All others were undoubtedly create when I got a full license) Could have an impact on them? I have a vague memory of reading somewhere that DTC create controls to check the license when they are created in the designer and store that info in them license. If this is the case does anyone know an easy way to update the license stored in control? I rather not just delete it and Add again because I would avoid having to redo the tab order (unless someone knows how to easily insert something in the middle of the order of tab instead of having to click through all the controls in the correct order)?

    In addition, I don't know if this would affect anything, but the project was originally built with ComponentWorks 1.0, we were forced to move to MStudio when we met a few bugs in CW, so all controls were originally CW controls which have been converted into control of CNi. I doubt that this is so like everywhere else, we changed during controls is not a problem, but I'm ready to try the suggestions.

    Hi JC,.

    I hope you had a good weekend!  I'm glad to hear that you're back running.  Add the extra button was, in fact, causing update the licensing information for the other buttons, as you can imagine.  After further research, I found that the license information are stored only the form of the control, and if this control doesn't change in any way (or in your case, adding a new project), he sees no reason when compiling to recreate a link to the license.  However, after the change of control and a new, it updates the link between the license information, which solved this problem in your case.

    I hope this helps, JC.  Have a great day!

  • How to dynamically create a tab?

    Hello everyone.

    I try to use the native SDK rather webworks, and I'm sometimes difficulties.

    I'm creating application with typical scheme:

    ListView-> TabbedPane-> ListView

    (List of collections-> tabs for models-> view model)

    If the user selects an item in the first posting of the list I so need the tabs, but if the user selects another one I need other tabs.

    Unfortunally tabbedPane controls don't dataModel property. It is only from the listView.

    So, I create Datamodel and manually load the XML with tabs:

    TabbedPane {
    
        id: tabbedPane
        showTabsOnActionBar: false
    
        attachedObjects: [
            GroupDataModel {
                id: dataModel
            },
            DataSource {
                id: dataSource
                source: "/data/list.xml"
                onDataLoaded: {
                    var items = data.listItem;
                    for (var i in items){
                        var tab = new Tab({title:items[i].name});
                        tabbedPane.add(tab);
                    }
    
                }
            }
        ]
    

    The data is loaded with success, but bb.cascades is not Builder for tab!

    I see some builders for Button, Label, and other controls, but 10 to 15 controls mybe created by other means?

    I know how it resolves in C++, but I want to know - perhaps QML-method exist?

    Are you sure it's a good idea? If you have a large number of items, which will create a better user experience, I think.

    That said, if you know you have does not exceed a certain number of elements and, therefore, tabs, you can create them in advance in your QML and add them (or remove) to your TabbedPane to give a dynamic effect.

    See https://github.com/blackberry/Cascades-Community-Samples/blob/master/PasswordSample/assets/main.qml#... for an example where I've done it myself.

    Hope that this help somehow small.

    Martin

  • How to dynamically create action item?

    Hi, I want to dynamically create point.

    Before I want to create using qml, but does not seem possible

    http://supportforums.BlackBerry.com/T5/Cascades-development/how-to-create-action-item-of-page-dynami...

    So maybe better to use C++ to create dynamically,

    I'm already try but are still not

    So I have a custom control qml (a Navigation pane)

    name List.qml

    the structure is like this:

    NavigationPane {}

    {Page}

    objectName: myPage

    {Of container

    ....

    }

    }

    }

    How to add action item to this .qml?

    I'm already try that, but failed

    C++ :

    Engine QDeclarativeEngine;

    QDeclarativeComponent component(&engine,QUrl::fromLocalFile("List.qml"));)

    QObject * object = component.create ();

    Page * myPage = object->findChild ("Edit");  Maybe, on that note, I'm wrong implemented? -> not found?

    ActionItem * action1 = ActionItem::create () .title ("first action");

    my page-> addAction (action1, ActionBarPlacement:nBar);

    Remove the object;

    How to create this dynamic Action item?

    Help, please

    Thank you

    Hello

    QML, the object name must be included between "" marks.

    Name of the object of your Page will be:

    objectName: "myPage"
    

    You can reach any CPP QML object like this:

    This excerpt comes from YourProjectName.cpp

    // create scene document from main.qml asset
    // set parent to created document to ensure it exists for the whole
    // application lifetime
    
    QmlDocument *qml = QmlDocument::create("asset:///main.qml").parent(this);
    
        // create root object for the UI
        AbstractPane *root = qml->createRootObject();
        // set created root object as a scene
        app->setScene(root);
    
    //and here comes the findChild method
    Page* qmlPage = root->findChild("myPage");
    

    After this, you can create any object on the side of C++ QML, as your own code:

    ActionItem* action1 = ActionItem::create().title("First action");
    myPage->addAction(action1, ActionBarPlacement:nBar);
    

    Don't have no need to create a QObejct, or declarative stuff.

  • Dynamically create and assess controls.

    I have an ArrayCollection collection in my application that I use to dynamically create controls for.  Each row of the table must create four controls.  The following code is what I used to create the items.  Problem is that I don't know how to evaluate when the time comes to deal with the values entered in each control.

    for (i = 0; i < model.) BudgetDetails.length; i++){
    If (i > 0) {}
    offset = offset + 25;
    }

    var TmpName1:Label = new Sun;
    TmpName1.text = modΦle. BudgetDetails [i]. BudgetCategory;
    TmpName1.name = "Label" + i;
    TmpName1.x = 5;
    TmpName1.y = offset + 6;
    TmpName1.width = 200;
    TmpName1.styleName = "LabelRightAlign";
    addElement (TmpName1);

    var TmpName2:TextInput = new TextInput();
    TmpName2.text = modΦle. BudgetDetails [i]. BudDesc;
    TmpName2.name = "Input_BudDesc" + i;
    TmpName2.x = 215;
    TmpName2.y = offset;
    TmpName2.width = 200;
    TmpName2.styleName = "TextInput_Desc";
    addElement (TmpName2);

    etc...

    }

    It works very well to create the controls, but I don't know how to loop through the controls to find the values entered into the TextInput controls.  I have to either assign names to controls before I create or I need to know how a loop on all of the items on my page.

    Well, it is not the most elegant solution out there, but it does not work...

    Code to delete the dynamically created controls *.

    var MyNumElements:int = numElements;          numElements decreases every time you delete an element

    var x: Object;

    var CurrentElement:int = 0;                              elements becomes the they are deleted

    for (i = 0; i< mynumelements;="">

    x = getElementAt (CurrentElement);

    TMPNAME = x.name;

    TMPNAME = tmpname.substring (0, 5);

    If (tmpname == 'Label' | tmpname == "Input") {}

    removeElementAt (CurrentElement);

    } else {}

    CurrentElement = CurrentElement + 1;

    }

    }

    Enter code to inspect the text controls *.

    for (i = 0; i< numelements;="">

    x = getElementAt (i);

    TMPNAME = x.name;

    TMPNAME = tmpname.substring (0, 5);

    If (tmpname == "Input") {}

    DoMyStuffHere

    }

    }

    Deletion of items was a little complicated numElements declines because by one whenever you remove an item that mess up your loop counter.  Also items get becomes the they are deleted.  Please also make sure that all THE OTHER ELEMENTS on your form are not named with the same string as the most dynamic. In my case, I named everything with Labelxxx or Input_xxx if all the other names had ti be assigned.  For example, I had a few other labels in my module so I had to name them.  Oh... an id is not the same as a name either!  (learned that the hard way...)

    If you have any suggestions on how to make code that dynamically adds, removes or inspects more elegant controls, please let me know!

  • How to dynamically create variables of StationGlobals who are LabVIEWIOControl

    I'm looking for a way to dynamically create variables StationGlobals LabVIEWIOControl.  I know not how to create variables through "PropertyObject/SetValXXX", however I have some difficualty create variables that are custom data types.

    Thank you

    Bryon

    Bryon,

    You can use an expression as follows:

    StationGlobals.NewSubProperty("MyVariable",PropValType_NamedType,False,"LabVIEWIOControl",0)

    I hope this helps!

  • How to dynamically create table names?

    I need to dynamically create arrays with array variable names.

    for example, something like this:

    for (var n = 0; n < nodeContainer.length; n ++) {}

    nodeObj = nodeContainer [n];

    var name: String = nodeObj.nodeID;

    table [name]: Array = new Array(); will create the table as "arrayName?

    }

    How?

    Although MovieClip is a dynamic class, classes that extend it DO NOT INHERIT of dynamic features.

    You'd become a big favor if you read the documentation:

    http://www.Adobe.com/LiveDocs/Flex/201/langref/statements.html#dynamic

    To be a class dynamic it must be explicitly defined as such. In your case, it should:

    SerializableAttribute public class dynamic couple extends MovieClip

    And, even once, you REALLY need to understand the AS3 syntax. I'm sorry for you teaches, but despite suggestions you insist on doing bad, although solutions are presented in the clearest way possible.

    The line var myObject ["v_" + VNAME] = new Object(); is a total nonsense in terms of syntax. If you have read my previous message (s), you must write it this way:

    var myObject:Object = new Object();

    ["v_" + VNAME] myObject = new Object();

  • How to reference a dynamically created MovieClip from an another MovieClip?

    Hello

    I would be grateful for the pointers to the following problem:

    I can't reference dynamically created MovieClips (links in a panel side on a Flash site, created from a XML file) from the current MovieClip (the selected link).

    I want to freeze the MovieClip/link to the mouseOver State, once it has been clicked - this part works. When a new MovieClip/link is clicked on, I would like to release the previously clicked on the link to the mouseOver State, which is what I have so far been unable to do.

    My problem seems to refer to the previous link/MoveClip. I used the statement (MovieClip (this) .name) route trace to determine that the clips are named item0, item1, item2 and so on. However, I was unable so far to reference the previous item so far. I tried to follow the route to the MovieClip on the stage and also essaye.item0.gotoandstop MovieClip (parent) and a lot of other different permutations, but nothing helped. It's the fact that they seem to be in a container called "panel", which is defeat me.

    Here's a live version that I downloaded, what could explain the problem better. Click on "UBER EACH" in the menu bar to access the page in question. It is the links on the left side (history, team Unser, etc.) who are the problem. You will see that once they were clicked, they stay in their mouseOver State.

    This is the code in question on the fla file, which is a file that I did not create myself. The parts in black work very well; It's the Red pieces there the rub:

    ***********************************

    import flash.display.MovieClip;

    panel.buttonMode = true;

    var: lang: uint = 1;

    var url_Link:String = MovieClip (root).program.websiteXML .language [lang] [MovieClip (root).program.linkPage].pages.titlePage.texts.pageList.txt [XT].@link numT;

    var urlPage:Number = number (MovieClip (root).program.webs iteXML.language [lang].pages.titlePage [MovieClip (root).program.linkPage].texts.pageList.tx t[numTXT].@linkPage);

    var request: URLRequest;

    var linkIndex:uint;

    var lastClickedLink:MovieClip; //This is supposed to store the last link that has been clicked - it does not work  

    panel.addEventListener (MouseEvent.CLICK, clicLink);

    panel.addEventListener (MouseEvent.ROLL_OVER, mouseOverLink);

    panel.addEventListener (MouseEvent.ROLL_OUT, mouseOutLink);

    function mouseOverLink(event:MouseEvent):void {}

    MovieClip (this) .gotoAndPlay ('s1');

    }

    function mouseOutLink(event:MouseEvent):void {}

    if(numTXT!== (linkIndex-1)/5) { State mouseOver of //freezes so this is the link for the current page

    MovieClip (this) .gotoAndPlay ('s2');

    }

    }

    function clicLink(event:MouseEvent):void {}

    var linkpage:uint =. MovieClip program.linkPage (root);

    If {(url_Link)

    request = new URLRequest (url_Link);

    navigateToURL (request);

    } else {}

    linkIndex = numTXT * 5 + 1;

    if(linkpage == 1) {}

    MovieClip (root).chPages.cont.page_about_mc.page3Tu rner_mc.gotoAndStop ([linkIndex]);

    } ElseIf (linkpage == 2) {}

    MovieClip (root).chPages.cont.page3_mc.page3Turner_ mc.gotoAndStop ([linkIndex]);

    }

    lastClickedLink.gotoAndPlay('s2'); / / This is supposed to release the clicked the link previous it is State mouseOver - does not work 

    lastClickedLink = MovieClip (this) .name; //this is supposed to set the new link as the last link clicked after that was released of her is State mouseOver - does not work   

    }

    }

    ***********************************

    If anyone can help, that would be great.

    What you might be after for this line is to use:

    lastClickedLink = MovieClip (event.currentTarget);

    For what you show, the name property of an object is a string, so I expect get you an error regarding trying to get a string to act as a MovieClip when you try to say to gotoAndPlay ('s2').

  • How to load dynamically an inspection of PC previously built in VBAI 3.6?

    Hello world

    A 1744 SmartCamera jointly with VBAI 3.6 and LabVIEW 7.1.1 is used to conduct inspections on a test bench. Inspections are created in VBAI 3.6, communication between LabVIEW and VBAI is done through ActiveX. For memory used on the SmartCamera (now there are only a few inspections, but their number will increase rapidly because the test bench where the SmartCamera is integrated will test hundreds of different EHR, each with an own inspection) I want to manually export inspections of the SmartCamera to the PC where LabVIEW is executed (this could be done through the control that comes with VBAI Manager) , but then I want to load the necessary inspection dynamically via LabVIEW. How do I do this?

    Access with FTP for the SmartCamera client I see the directory structure, and I know that inspections are in/vbai/products/and everyone in a own subdirectory, where two files exist: Inspect.bin and Info.txt. The control manager creates only a VBAI file when you export an inspection to the PC.

    Of course I can do both ways - export and import of an inspection - via an additional tool of LabVIEW that simply moves the appropriate directory and its contents via FTP, but y at - it another way to do as described above (export manually using the Manager of the Inspection, import programmatically using LabVIEW)?

    Best regards from sunny Berlin

    Carsten

    Guten Morgen Carsten,

    ICH habe heute Antwort aus den USA has. Yesterday our leider wird,

    dass're nur durch den Manager of Inspection possible ist, die zwischen .vbai und .bin conversion

    touch. Man konnte noch den select Inspection stage use, um dem Benutzer die

    Auswahlmoglichkeit zwischen different content zu ermöglichen,

    hyva ja dafur alle auf der Cam vorliegen content however, was bei something 500 content

    schwierig breast uninteresting.

    Possibility surely die, die ich sehe daher, der ist Weg, den of the La showers did.

    namely alle content once by auf die inspection Manager Cam supported.

    die Yes erzeugten bin-files in einem zentralen deposit auf der host-Fliegengitter speichern

    und dann bei Bedarf auf die Smart Cam loaded FTP.

    Sorry, aber das scheint bisher really der Weg zu breast ointment.

    Beste Grüße,

    David

  • Dynamically create QmlComponentDefinition objects in the code

    With QML sample:

    // --- main.qml ---Container {    objectName: "fooContainer"    attachedObjects: [        ComponentDefinition {            id: barComponent            source: "Bar.qml"        }    ]}
    
    // --- Bar.qml ---Container {    objectName: "bar"    Label {        text: "FooBar"    }}
    

    I am trying to dynamically create barComponent objects and add them to fooContainer in C++ code.

    So I reference the using fooContainer:

    fooContainer = createdRootObject->findChild("fooContainer");
    

    But how to reference the definition of QML barComponent to use his method createObject()?

    The definition of the element is used to create the object of QML

    To create the C++ object, you need to do:

    qml = QmlDocument::create("asset:///Bar.qml");
    Control *root =  qml->createRootObject();
    fooContainer->add(root)
    
  • Help with dynamically created components (turning point properties on or off)

    Hi all! I'm working on an application with a bunch of delegates of control is created dynamically.

    Here's my use case-scenario:

    I do a type app GPA calculator, and instead of hard coding a lot of drop-down lists for students select notes, I created a custom component. According to the documentation, each component created dynamically are destroyed until the parent TI auto is destroyed. ControlDelegate seems to be a better option that you can set the flag to false to make the component to go.  I created a delegate of control that uses the custom of the list drop-down and added a few aliases to give each a name of object on creation. Now, my problem is that I can't understand the correct item call to the property delegateActive set to false to make the element disappear.

    Here is the delegate of the control:

    import bb.cascades 1.2
    
    Container {
        property alias cT : classTitle.text
        property alias oN : obName.text
        property alias dN : dDown.objectName
        property alias cdF : dDown.delegateActive
        property alias dDown : dDown 
    
        topPadding: 10.0
        bottomPadding: 10.0
    
        ControlDelegate {
            id: dDown
            sourceComponent: droDwn
            delegateActive: true
        }
        attachedObjects: [
            ComponentDefinition {
    
                id: droDwn
                GpaDD {
                    ddPro {
                        title: cT
                        objectName: oN
                    }
                }
            }
    
        ]
    
        Label {
            id: classTitle
            text: ""
            visible: false
        }
        Label {
            id: obName
            text: ""
            visible: false
        }
    
        onTouch: {
            console.log(dDown.delegateActive + " " + dDown.objectName)
        }
    }
    

    on the home page, I have the following code to create a new component:

    Page {
        id: gpaCalc
        actions: [
            ActionItem {
                id: addDD
                title: "Add Class"
                imageSource: "asset:///images/add.png"
                ActionBar.placement: ActionBarPlacement.OnBar
    
                onTriggered: {
                    var nn = ddContainer.count();
                    var newDD = defDrop.createObject();
                    newDD.cT = "Class " + [ nn ];
                    newDD.oN = "_" + nn;
                    newDD.dN = "_" + nn;
                    ddContainer.add(newDD);
    
                }
            },
            ActionItem {
                id: remDD
                title: "Remove Class"
                imageSource: "asset:///images/Edit.png"
                ActionBar.placement: ActionBarPlacement.OnBar
    
                onTriggered: {
                    console.log();
                }
    
            }
        ]
        attachedObjects: [
            ComponentDefinition {
                id: defDrop
                DropDelegate {
                }
            }
        ]
        Container {
    
            /* ImageView {
             * horizontalAlignment: HorizontalAlignment.Fill
             * verticalAlignment: VerticalAlignment.Fill
             * imageSource: "asset:///images/rect_overlay.png"
             * opacity: 0.65
             * }*/
            ScrollView {
                horizontalAlignment: HorizontalAlignment.Fill
                verticalAlignment: VerticalAlignment.Fill
                scrollViewProperties {
                    scrollMode: ScrollMode.Vertical
    
                }
                Container {
                    horizontalAlignment: HorizontalAlignment.Fill
                    verticalAlignment: VerticalAlignment.Fill
                    topPadding: 50
                    leftPadding: 50
                    rightPadding: 50
                    id: ddContainer
    
                    onCreationCompleted: {
                        if (ddContainer.count() < 2) {
                            var nn = ddContainer.count();
                            var newDD = defDrop.createObject();
                            newDD.cT = "Class " + [ nn ];
                            newDD.oN = "_" + nn;
                            newDD.dN = "_" + nn;
                            ddContainer.add(newDD);
                        }
                    }
                    Label {
                        text: "Select Your Grades"
                        textStyle.fontStyle: FontStyle.Normal
                        textStyle.fontWeight: FontWeight.W100
                        verticalAlignment: VerticalAlignment.Top
                        horizontalAlignment: HorizontalAlignment.Center
                        textStyle.fontSize: FontSize.XXLarge
                    }
                }
                accessibility.name: "TODO: Add property content"
            }
        }
    }
    

    How can I find the last delegate of control created to define the delegate tag as wrong?

    Any help is appreciated!

    You have so much you need to do it this way?
    Why not just have a placeholder for * each * drop-down list and turn them on and off individually using delegateActive?

Maybe you are looking for