Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    As2 problema con movieclip

    ciao ragazzi!
    Ho un pezzo di codice actionscript 2 che vorrei modificare, mi spiego:
    Questo codice mi permette di creare un menu pescando le voci da un file xml e poi mi carica in base al pulsante cliccato un movieclip (ma solo all'onRelease).
    Se volessi che gia di default mi caricasse il movieclip home.swf sapete come devo fare?
    Grazie mille!
    ecco lo script:


    var a_xml:XML = new XML();
    var current_mc:MovieClip;
    a_xml.ignoreWhite = true; //ignora gli spazi bianchi o messi a capo
    a_xml.load("menu.xml"); //applica l'azione load
    a_xml.onLoad = function(ok)//per capire se ha caricato tutto correttamente o se è un caso
    {
    if(ok == true) //se ok è vero vuol dire che tutto è andato bene
    {
    //trace(this);//this è a_xml perchè è l'istanza della classe xml e la stà in qualche modo gestendo
    /*adesso vorrei che mi desse solo il primo figlio del documento */
    //trace(this.firstChild);//fa vedere solo il documento senza la prima intestazione di xml
    //trace(this.firstChild.firstChild.firstChild.firstC hild); //legge il figlio del primo figlio, del primo figlio, del primo figlio
    // lastChild richiama ilfiglio più a destro(o anche detto all'ultimo figlio) al posto di quello alla più sinistra
    //nextSibling per richiamare il fratello d destra
    //previousSibling va al fratello di sinistra

    //generare tante voci di menu tante sono le voci
    //ogni nodo si porta dietro un array che mantiene all'interno la posizione dei suoi figli
    //trace(this.firstChild.childNodes);


    for (var i:Number =0; i<this.firstChild.childNodes.length;i++)
    {
    current_mc = attachMovie('i_opzione','opzione_'+i+'_mc',i);
    current_mc._x =20+(current_mc._width*i);
    current_mc._y =28;
    current_mc.field_txt.text =this.firstChild.childNodes[i].firstChild.firstChild;
    current_mc.swfPath=this.firstChild.childNodes[i].lastChild.firstChild.nodeValue;
    tasto=current_mc.field_txt.text;
    current_mc.onRollOver = function ():Void
    {
    this._alpha = 50;
    }
    current_mc.onRollOut = function ():Void
    {
    this._alpha = 100;
    }

    current_mc.onRelease = function ():Void
    {
    /*stiamo inserendo una MovieClip*/
    createEmptyMovieClip('container_mc',1000);
    container_mc.loadMovie(this.swfPath);
    container_mc._x=150;
    container_mc._y=100;

    trace(this);


    }
    }
    }
    else
    {
    trace("errore, non è stata caricata esattamente la pagina");
    }

    }

  2. #2
    ti basta aggiugere questo

    createEmptyMovieClip('container_mc',1000);
    container_mc.loadMovie("home.swf");

    alla fine del tuo cod

    se ho ben capito
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  3. #3
    prova così

    dopo

    current_mc.onRelease = function ():Void
    {
    /*stiamo inserendo una MovieClip*/
    createEmptyMovieClip('container_mc',1000);
    container_mc.loadMovie(this.swfPath);
    container_mc._x=150;
    container_mc._y=100;

    trace(this);


    }

    metti

    codice:
    if (i==0){ //se sono al primo bottone
       current_mc.onRelease.apply(current_mc)
    }

  4. #4
    Grazie ragazzi erano corrette entrambe le soluzioni!!


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.