Flash CS3 - Flash CS4

Free tutorials and scripts for all.
Actionscript 3.0

Caricare e "scaricare" swf esterni

This is a discussion on Caricare e "scaricare" swf esterni within the FLEX builder 3 forums, part of the Flash CS3 e Actionscript 3.0 category; Salve, sto sviluppando un progetto in flex nel quale devo caricare dei "panorami interattivi". ( VR imago | Home per avere un'...


Go Back   Forum Flash CS3 Flash CS4 > Flash CS3 e Actionscript 3.0 > FLEX builder 3

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 14-05-08, 00:55
Junior Member
 
Join Date: May 2008
Posts: 11
Rep Power: 0
mathew is on a distinguished road
Caricare e "scaricare" swf esterni

Salve,
sto sviluppando un progetto in flex nel quale devo caricare dei "panorami interattivi".
(VR imago | Home per avere un'idea di cosa si tratti)
Il panorama altro non è che un filmato swf esterno che va importato nel progetto.

Essendo abbastanza nuovo di flash e capendo ben poco di ActionScript, ho trovato un codice che mi permette di caricare il panorama tramite uno Sprite:

Code:
package {
    import flash.display.Loader ;
    import flash.display.MovieClip;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.net.URLRequest;

    public class FlashPanoramaSprite extends Sprite
    {
        private var panorama:MovieClip;
        private var loader:Loader = new Loader();

        public function FlashPanoramaSprite()
        {
            loader.load(new URLRequest("pano/pano.swf"));
            addChild(loader);
           
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
        }
       
        private function loadComplete (e:Event) : void
        {
            panorama = loader.content as MovieClip;
            panorama.setArea(100,50,400,300);
           
            panorama.loadPanorama("panoName=images/snow");
        }
    }
}
e il seguente UIComponent:

HTML Code:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml "
    layout="absolute"
    creationComplete="complete()"
    >
   
    <mx:Script>
        <![CDATA[
            import mx.core.UIComponent;
           
            public function complete() : void
            {
                var sprite:FlashPanoramaSprite = new FlashPanoramaSprite();

                var component:UIComponent = new UIComponent();
                component.addChild(sprite);

                addChild(component);
            }
           
        ]]>
    </mx:Script>
   
</mx:Application>
Al mio pulsante associo la funzione complete(), il panorama si carica e fin qui tutto ok.

Ora, come faccio a "scaricarlo"?!

In realtà, non ho necessità di scaricarlo, forse basterebbe renderlo invisibile. Ho provato anche ad inserirlo in un canvas al'interno di un Viewstack, ma resta sempre visibile anche se cambio canvas.

E' possibile crare una funzione ActionScript che lo renda invisibile, tenedo conto che all'interno di questo progetto avrò più swf diversi da caricare e rendere invisibili?

Grazie mille!
Matteo
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #2 (permalink)  
Old 14-05-08, 15:18
Author
 
Join Date: Jul 2007
Posts: 8
Rep Power: 0
7Miles is on a distinguished road
Riferimento: Caricare e "scaricare" swf esterni

Prova a tenere var component:UIComponent e var sprite:Sprite fuori dal metodo complete.
Quindi diventano proprietà in questo modo, e poi usi il removeChild per rimuovere il vecchio swf prima di inserire l' swf da caricare.
HTML Code:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml "
    layout="absolute"
    creationComplete="complete()"
    >
   
    <mx:Script>
        <![CDATA[
            import mx.core.UIComponent;
           private var component:UIComponent;
           private var sprite:Sprite;
            public function complete() : void
            {
                if(sprite!=null)
                {
                     component.removeChild(sprite);
                     removeChild(component);
                 }
                sprite = new FlashPanoramaSprite();

                component = new UIComponent();
                component.addChild(sprite);

                addChild(component);
            }
           
        ]]>
    </mx:Script>
   
</mx:Application>
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #3 (permalink)  
Old 15-05-08, 20:35
Junior Member
 
Join Date: May 2008
Posts: 11
Rep Power: 0
mathew is on a distinguished road
Re: Caricare e "scaricare" swf esterni

Grazie 7Miles!
Dunque, se volessi inserire due panorami, dovrei creare due file AS contenenti i due diversi percorsi, e richiamarli con una funzione del tipo:

HTML Code:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
    xmlns:mx="http://www.adobe.com/2006/mxml "
    layout="absolute"
    >
   
    <mx:Script>
        <![CDATA[
            import mx.core.UIComponent;
           private var component:UIComponent;
           private var sprite:Sprite;
            public function complete() : void
            {
                if(sprite!=null)
                {
                     component.removeChild(sprite);
                     removeChild(component);
                 }
                sprite = new FlashPanoramaSprite();

                component = new UIComponent();
                component.addChild(sprite);

                addChild(component);
            }
          
           public function complete2() : void
            {
                if(sprite!=null)
                {
                     component.removeChild(sprite);
                     removeChild(component);
                 }
                sprite = new FlashPanoramaSprite2();

                component = new UIComponent();
                component.addChild(sprite);

                addChild(component);
            } 
        ]]>
    </mx:Script>
   
</mx:Application>
evidentemente però c'è qualche errore perchè non funziona..

Inoltre, supponendo che il panorama stia in un canvas a sua volta all'interno di un Viewstack, è possibile, far sparire il panorama quando si passa dall'uno all'altro canvas?
Ho provato ad usare creationComplete, ma senza risultato.

Non ne vado davvero fuori..

Grazie.
Matteo
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump

Similar Threads

Thread Thread Starter Forum Replies Last Post
Actionscript 3 Problema "dinamico":in locale funziona, sul sito no - forse è "fl.transition"? Dexter Actionscript 3.0 base 1 19-09-08 09:24
Actionscript 3 Problema con "evento:MouseEvent" e "evento.target.name" Baro Actionscript 3.0 base 2 02-08-08 20:21
Flash CS3 Aprire un "popup flash" da un bottone e/o caricare un swf esterno leopardone Flash CS3 generale 0 26-06-08 13:35
Aiutoooo " Interagire Con Swf Esterni " alexhmd88 Actionscript 3.0 base 1 25-04-08 08:58
Windows Xp "don't send report error importing in falsh" alexyz4 Flash CS3 eng 6 12-09-07 08:59


All times are GMT. The time now is 20:19.


Powered by vBulletin versione 3.7.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0 RC4
Forum SiteMap


FlepStudio
by Filippo Lughi
P.IVA 03605860406