• User

    caricare swf esterno as3 pulsante

    Ciao a tutti sono nuovo nel forum,
    utilizo as2 e sono passato a as3
    ho un menu con dei pulsanti,
    pulsante pul_1 e così via
    ecco il codice per caricare il swf esterno

    on (release) {
    loadMovie("chisiamo.swf", "pagina");

    come faccio in as3??

    dopo diverse ricerche BOO!:?

    grazie!!!


  • Super User

    Ciao leorun benvenuto sul forum GT, Innanzi tutto in as3 non è più possibile scrivere codice sulle istanze ma solamente nei fotogrammi, quindi se il tuo pulsante ha nome istanza il codice da mettere sul primo fotogramma è

    
    pul_1.addEventListener(MouseEvent.CLICK, onClick);
    
    function onClick(event:MouseEvent) {    
        loader.load(new URLRequest("chisiamo.swf"))
    
        }
    
    addChild(loader)
    loader.x=0
    loader.y=0
    
    

  • User

    Grazie provo!!:D


  • Super User

    OK stai attento che la funzione onClick deve essere univoca quindi in caso di menù con più pulsanti puoi ad esempio aggiungere una numerazione onClick1, onClick2, ecc, così comè lo swf viene caricato sulo stage poi assegnando le coordinate al loader lo sposti dove vuoi, se invece hai l'esigenza di caricare lo swf nel clip contenitore pagina al posto di "addChild(loader)" scrivi "pagina.addChild(loader)".


  • User

    Praticamente va,
    pero se voglio aggiungere un altro pul non va,
    ho 6 pul da inserire come devo fare!!

    pul_1.addEventListener(MouseEvent.CLICK, onClick);

    function onClick(event:MouseEvent) {
    loader.load(new URLRequest("chisiamo.swf"))

    }
    

    addChild(loader)
    loader.x=0
    loader.y=0

    pul_2.addEventListener(MouseEvent.CLICK, onClick);

    function onClick(event:MouseEvent) {
    loader.load(new URLRequest("fotos.swf"))

    }
    

    addChild(loader)
    loader.x=0
    loader.y=0


  • Super User

    Guarda il post precedente ho spiegato come fare in caso di più pulsanti.


  • User

    Allora ti spiego un po,
    ho il mio filmato, con una presentazione e menu,
    che carica la home.swf
    ecco il codice

    var loader:Loader = new Loader();

    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, fineCaricamento)

    function fineCaricamento(loadEvent:Event)
    {
    addChild(loadEvent.currentTarget.content);
    }

    loader.load(new URLRequest("home.swf"))

    Dopo in un altro livello 6 pulsanti,
    con azione

    pul_1.addEventListener(MouseEvent.CLICK, onClick);

    function onClick(event:MouseEvent) {
    loader.load(new URLRequest("chisiamo.swf"))
    }

    addChild(loader)
    loader.x=0
    loader.y=0

    quando parte il filmato tutto ok
    carica il filmato della home.swf
    pero quando premo pul_1 si vede la pag chisiamo.swf sopra la home.swf

    Per i pulsanti ho risolto così, funziona!!

    pul_1.addEventListener*(MouseEvent.CLICK,onClick1);
    pul_2.addEventListener*(MouseEvent.CLICK,onClick2);
    functiononClick1(evt:MouseEvent):void{
    loader.load(newURLRequest("contatti.swf"));
    }
    function
    onClick2(evt:MouseEvent):void
    {
    **loader.load(newURLRequest("chisiamo.swf"));
    }
    addChild(loader)
    loader.x=0
    loader.y=0


  • Super User

    Prova così

    
    var loader:Loader = new Loader();;
     loader.load(new URLRequest("home.swf"))
     loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded, false, 0, true)
    function onLoaded(evt:Event):void{
    addChild(loader)
    evt.target.removeEventListener(Event.COMPLETE, onLoaded)
    loader.x = 0;
    loader.y = 0;
        }
    
    pul_1.addEventListener(MouseEvent.CLICK, onClick);
    
    function onClick(event:MouseEvent) {
    loader.load(new URLRequest("chisiamo.swf"))
    }
    addChild(loader)
    loader.x=0
    loader.y=0
    
    

  • User

    ecco mi da così:?

    TypeError: Error #1009: Impossibile accedere a una proprietà o a un metodo di un riferimento oggetto null.
    at indexnemo_fla::MainTimeline/frame66()


  • User

    Ho provato a fare ancora un altro pulsante;
    quando carico il filmato per ogni pulsante
    i filmati vengono sovrapposti,
    tutte tre in uno


  • Super User

    Fammi sapere se risolvi, ciao.


  • User

    Ciao Nhatan grazie a te praticamente ho risolto ecco il codice

    var loader:Loader = new Loader();;
    loader.load(new URLRequest("piecemaker.swf"))
    loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded, false, 0, true)
    function onLoaded(evt:Event):void{
    addChild(loader)
    evt.target.removeEventListener(Event.COMPLETE, onLoaded)
    loader.x = 0;
    loader.y = 0;
    }
    //******************************************************
    pul1.addEventListener(MouseEvent.CLICK, onClick1);

    function onClick1(event:MouseEvent) {
    loader.load(new URLRequest("piecemaker.swf"))
    }
    //********************************************************

    pul2.addEventListener(MouseEvent.CLICK, onClick2);

    function onClick2(event:MouseEvent) {
    loader.load(new URLRequest("c.swf"))
    }
    //********************************************************

    pul3.addEventListener(MouseEvent.CLICK, onClick3);

    function onClick3(event:MouseEvent) {
    loader.load(new URLRequest("p.swf"))
    }
    //********************************************************

    pul4.addEventListener(MouseEvent.CLICK, onClick4);

    function onClick4(event:MouseEvent) {
    loader.load(new URLRequest("el.swf"))
    }
    //********************************************************

    pul5.addEventListener(MouseEvent.CLICK, onClick5);

    function onClick5(event:MouseEvent) {
    loader.load(new URLRequest("se.swf"))
    }
    //***************************************************
    pul6.addEventListener(MouseEvent.CLICK, onClick6);

    function onClick6(event:MouseEvent) {
    loader.load(new URLRequest("con.swf"))
    }

    addChild(loader)
    //****************************************************
    pul7.addEventListener(MouseEvent.CLICK, onClick7);

    function onClick7(event:MouseEvent) {
    loader.load(new URLRequest("par.swf"))
    }
    addChild(loader)
    loader.x=0
    loader.y=0

    il problema e il seguente ho caricato nella prima pag il piecemaker
    le foto in 3D che funziona da solo quando vado nel HTML
    pero mi fa vedere la prima immagine poi e fermo
    naturalmente ho caricato tutte le sue cartelle in più a un .css e un .xml

    dovrei metterlo al interno del mio codice????

    ecco

    ReferenceError: Error #1069: Impossibile trovare la proprietà perspectiveProjection su flash.geom.Transform e nessun valore predefinito presente.
    at com.modularweb.imageGalleries::PieceMaker/stageResized()
    at com.modularweb.imageGalleries::PieceMaker/initiate()
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at flash.net::URLLoader/onComplete()

    Grazie


  • Super User

    Aspetta, stai dando per scontato che io sappia tutto, cosa è picemaker? di quali immagini 3d parli, è una galleria o cosa? lo xml serve per caricare le immagini?


  • User

    si scusa
    e una galleria foto
    con tutte le loro cartelle etc.
    forse dovrei mettere nel codice
    un .css e un .xml
    che vada a collegarsi Booo


  • User

    se vi può servire
    cercate

    piecemaker


  • Super User

    La ho vista, sai la vedo dura caricarla come come swf esterno è fatta per essere inserita direttamente in una pagina html, purtroppo come molte gallerie una volta caricata perde i collegamenti, tra l'altro è molto complessa, deve essere fatta con una versione di flash superiore alla cs3 non posso neanche aprire il sorgente, ma anche se riuscissi ad aprirlo dubito che sarei in grado di modificare il codice, ho visto che è possibile fare domande all'autore, con l'inglese come te la cavi?


  • User

    Inglese "0,0"
    io ho CS4
    ho tutti file
    fla
    swf
    html
    css
    xml

    praticamente basta aprire il .fla
    cambiate sfondo, colore
    e tutto fatto
    si modifica la cartella images
    con le tue foto, sempre con nome
    image1.jpg
    image2.jpg

    nella mia pagina vedo tutto il problema e quando la home carica il filmato esterno si vede sola la prima foto


  • User

    come posso mandarti un link


  • Super User

    Un link a cosa? Mandamelo in privato.