• User

    Accesso alla proprieta non definità

    ciao , perche' non riesco a rimuovere un' istanza caricata dalla libreria ???

    var principiante:modprincipiante = new modprincipiante();

    addChild (principiante);

    fino a qui ci siamo ......ora la variabile principiante e' un'istanza della libreria che contiene un
    pulsante , se clicco sul si mi dovrebbe rimuovere tutta l'istanza , ma se uso il comando

    removechild(principiante);

    mi esce l'errore " Accesso alla proprieta non definità"
    Nathan , solo tu mi puoi aiutare.
    Ciao


  • Super User

    Scusa "si" cosa è, o meglio dove si trova? devi darmi più delucidazioni.


  • User

    @Nhatan said:

    Scusa "si" cosa è, o meglio dove si trova? devi darmi più delucidazioni.

    Allora nathan , ho creato un'istanza che si carica dalla libreia alla pressione di un pulsante , la stessa istanza contiene un pulsante che se schiacciato deve rimuovere l'istanza stessa......riesco a caricare l'istanza dalla libreria , ma non c'e' verso di scaricarla......esiste una funzione di scarica tutte le istanze caricate ?


  • Super User

    Non è complicato, ammettiamo che chiamiamo mc l'istanza del movieclip che contiene il pulsante btn_scarica, basta che nel listener indichi il percorso del pulsante, cioè mc.btn_scarica.

    
    var mc:Mc=new Mc
    btn_carica.addEventListener(MouseEvent.CLICK, carica)
    function carica(evt:MouseEvent):void{
        addChild(mc)
    }
    mc.btn_scarica.addEventListener(MouseEvent.CLICK, scarica)
    function scarica(evt:MouseEvent):void{
        removeChild(mc)
    }
    
    

  • User

    grazie nathan , ma non riesco a farlo funzionare ......questo e' il codice per farlo caricare.......

    **var livello:popuplivello_mc = new popuplivello_mc();

    home_btn.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_2);

    function fl_MouseClickHandler_2(event:MouseEvent):void
    {
    addChild(livello);
    }**

    adesso alla pressione del pulsante(livellosi_btn) caricato con l' istanza "livello"

    **livellosi_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToScene_7);

    function fl_ClickToGoToScene_7(event:MouseEvent):void
    {

    MovieClip(this.root).gotoAndStop(1, "home");
    
    ????????????????????????????????????????
    

    }**

    vai al fotogramma 1 e rimuovi istanza "livello"

    Con il comando removeChild(livello) non funziona per nessun verso.......ho pensato che venendo dalla libreria forse
    c'e' bisogno di un percorso particolare.....Nathan sono nelle tue mani.....
    Grazie e scusa del disturbo.


  • Super User

    Se il pulsante livellosi_btn si trova dentro l'istanza livello allora sarà

    
    **livello.livellosi_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToScene_7);**
    
    

  • User

    ho seguito alla lettera la tua spiegazione ma non funzia.......ora provo a rispiegarmi meglio.........
    carico un' istanza dalla libreria , questa istanza si chiama principiante.....l'ho dichiarata con la variabile

    var principiante:modprincipiante = new modprincipiante();

    nell' istanza principiante e' contenuto un pulsante messainmoto_btn

    se io do un' azione al pulsante non funziona........perche????

    la sintassi e' questa.......sicuramente sara una cacchiata , ma sono 3 giorni che ci provo e niente....

    principiante.messainmoto_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_28);
    function fl_ClickToGoToAndStopAtFrame_28(event:MouseEvent):void
    {
    gotoAndStop(36);
    }

    mi da sempre errore accesso alla proprieta' non definita......Bohhhhhhhh


  • Super User

    Non trova il pulsante messainmoto_btn, possono essere due cose, o ti sei dimenticato di dare nome istanza al pulsante cosa di cui dubito non si trova nel primo frame di principiante.


  • Super User

    Allora hai risolto?