Flash CS3 - Flash CS4

Free tutorials and scripts for all.
Actionscript 3.0

Creare un sito caricando SWF esterni con Flash CS3

This is a discussion on Creare un sito caricando SWF esterni con Flash CS3 within the Articoli e tutorials forums, part of the Flash CS3 e Actionscript 3.0 category; Buondì... Stò tentando di fondere questo esempio con l'utility MacMenù...cercando di capire le logiche di AS3...dovrei esserci ...


Go Back   Forum Flash CS3 Flash CS4 > Flash CS3 e Actionscript 3.0 > Articoli e tutorials

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #101 (permalink)  
Old 10-07-08, 12:41
Member
 
Join Date: Jul 2008
Posts: 30
Rep Power: 0
dadoge is on a distinguished road
Re: Creare un sito caricando SWF esterni con Flash CS3

Buondì...

Stò tentando di fondere questo esempio con l'utility MacMenù...cercando di capire le logiche di AS3...dovrei esserci quasi ma mi manca un punto...ovviamente il più importante...nella funzione CambiaSezione nell'assegnazione

id = m.target.parent.id+1;

id mi rimane sempre a 0 forzando un id diverso il tutto funziona correttamente quindi presumo che il problema si nel passaggio dell'evento (la cui logica non mi è del tutto chiara)

vorrei capire se è un problema di script o di oggetti utilizzati nel fla, la differenza stà nel fatto che in questo esempio vengono utilizzati dei pulsanti mentre nel mio esempio delle bitmap

Spero che qualcuno mi illumini...allego lo script

Buona Giornata

Daniele

/*
*************************************
* Flash Mac Menu
* Flash CS3 Blog con Tutorial e risorse per Flash cs3 e Actionscript 3.0
* Author: Filippo Lughi
* version 1.0
*************************************
*/
package org.FlepStudio{
import flash.display.*;
import flash.events.*;
import flash.net.*;
import flash.net.URLRequest;
public class Main extends MovieClip {
private var border:int=2;
private var min:int=32;
private var max:int=92;
private var unit:Number;
private var outdistancing:Number;
private var speed:Number=0.15;
private var _V :Number;
private var now:Number=0;
private var pUnit:Number;
private var center:Array=new Array();
private var icons_array:Array;
private var url_array:Array;
private var weath:Boolean=true;
private var into:Boolean=true;
private var xx:Number=0;
private var yy:Number=0;
private var loader:Loader;
private var swf:String;
private var id:int=0;

public function Main() {
addEventListener(Event.ADDED_TO_STAGE,init);
}
private function init(evt:Event):void {
removeEventListener(Event.ADDED_TO_STAGE,init);
stop();
stage.frameRate=31;
url_array=new Array('sezioni/home.swf',
'sezioni/sezione1.swf',
'sezioni/sezione2.swf',
'sezioni/sezione3.swf',
'sezioni/sezione4.swf',
'sezioni/sezione5.swf',
'sezioni/sezione6.swf',
'sezioni/sezione7.swf',
'sezioni/sezione8.swf',
'sezioni/sezione9.swf');
icons_array=new Array(menu_mc.sezione_1_mc,
menu_mc.sezione_2_mc,
menu_mc.sezione_3_mc,
menu_mc.sezione_4_mc,
menu_mc.sezione_5_mc,
menu_mc.sezione_6_mc,
menu_mc.sezione_7_mc,
menu_mc.sezione_8_mc,
menu_mc.sezione_9_mc,
menu_mc.sezione_10_mc);
unit=2.5*min;
outdistancing=min+1;
_V=max - min;
pUnit=Math.PI/unit;
for (var i:int=0; i < icons_array.length; i++) {
icons_array[i].y=-border;
center[i]=(2*i-icons_array.length-1)*outdistancing/2;
icons_array[i].mouseChildren=false;
icons_array[i].buttonMode=true;
icons_array[i].id=i;

}
menu_mc.tray.height=min+2*border;
menu_mc.addEventListener(Event.ENTER_FRAME,moveMen u);

caricaHome();
aggiungiListenerMenu();
}
private function moveMenu(evt:Event):void {
var low:Number;
var high:Number;
var elevation:Number=min+2*border+_V*now;
var _X:Number;
var _F:Number;
var c_F:Number;
var s_F:Number;
var _S:Number;
var _Vcale:Number;
if (now==0||now==1) {
weath=false;
} else {
weath=true;
}
if (into) {
now=Math.min(1,now+0.2);
} else {
now=Math.max(0,now-0.2);
}
if (xx!=mouseX||yy!=mouseY||weath) {
xx=menu_mc.mouseX;
yy=menu_mc.mouseY;
var xx1=menu_mc.tray.x;
var xx2 =xx1+menu_mc.tray.width;
}
if (!weath) {
if (xxxx2||Math.abs(yy)>elevation) {
into=false;
} else {
into=true;
}
}
for (var i:int=0; i < icons_array.length; i++) {
low=center[i]-now*unit+50;
high=center[i]+now*unit+50;
if (xx<=low) {
_X=high;
}
if (xx>=high) {
_X=low;
}

if (xx>low&&xx _F=pUnit*(high-xx);
c_F=Math.cos(_F/2);
s_F=Math.sin(_F)/20;
_X=center[i]-now*unit*(c_F+s_F)+50;
_S=_V*(1-c_F*c_F);
} else {
_S=0;
}
_Vcale=(min+now*_S)/128;
icons_array[i].scaleX=icons_array[i].scaleY=_Vcale;
icons_array[i].x=_X;
menu_mc.tray.width=icons_array[icons_array.length-1].x-icons_array[0].x+icons_array[0].width/2+icons_array[icons_array.length-1].width/2+2*border;
menu_mc.tray.x=(icons_array[0].x-icons_array[0].width/2-border);
}
}

private function aggiungiListenerMenu():void {
for (var i:int=0; i < icons_array.length; i++) {
icons_array[i].id=i;
icons_array[i].addEventListener(MouseEvent.MOUSE_DOWN,moveNested Clip);
}
}

private function entra(m:MouseEvent):void {
this.gotoAndStop(2);
caricaHome();
}
private function tornaHome(m:MouseEvent):void {
id=0;
loader.unload();
removeChild(loader);
rimuoviListeners(loader.contentLoaderInfo);
caricaHome();
}
private function caricaHome():void {
swf=url_array[0];
var request:URLRequest=new URLRequest(swf);
loader=new Loader();
initListeners(loader.contentLoaderInfo);
loader.load(request);
id=0;

}
private function moveNestedClip(m:MouseEvent):void {
var loadedSWF:MovieClip=loader.content as MovieClip;
var nested_clip:MovieClip=loadedSWF.benvenuti_mc as MovieClip;
nested_clip.gotoAndPlay(32);
nested_clip.addEventListener(Event.ENTER_FRAME,mov eMyTimeLine);

function moveMyTimeLine(evt:Event):void {
if (evt.currentTarget.currentFrame==62) {
evt.currentTarget.stop();
evt.currentTarget.removeEventListener(Event.ENTER_ FRAME,moveMyTimeLine);
cambiaSezione(m);
}
}
}
private function cambiaSezione(m:MouseEvent):void {

id = m.target.parent.id+1;
trace( id );
loader.unload();
removeChild(loader);
rimuoviListeners(loader.contentLoaderInfo);
caricaSezione(m.target.parent.id+1);

}
private function caricaSezione(n:int):void {
swf=url_array[id];
var request:URLRequest=new URLRequest(swf);
loader=new Loader();
initListeners(loader.contentLoaderInfo);
loader.load(request);
}
private function initListeners(dispatcher:IEventDispatcher):void {
dispatcher.addEventListener(Event.OPEN,inizia);
dispatcher.addEventListener(ProgressEvent.PROGRESS ,inCaricamento);
dispatcher.addEventListener(Event.COMPLETE,complet ato);
}
private function rimuoviListeners(dispatcher:IEventDispatcher):void {
dispatcher.removeEventListener(Event.OPEN,inizia);
dispatcher.removeEventListener(ProgressEvent.PROGR ESS,inCaricamento);
dispatcher.removeEventListener(Event.COMPLETE,comp letato);
}
private function inizia(event:Event):void {
menu_mc.visible=false;
}
private function inCaricamento(event:ProgressEvent):void {
var n:uint=(event.bytesLoaded/event.bytesTotal)*100;
}
private function completato(event:Event):void {
addChild(loader);
swappa();

menu_mc.visible=true;
}
private function swappa():void {
swapChildren(loader,menu_mc);

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

  #102 (permalink)  
Old 10-07-08, 13:10
Member
 
Join Date: Jul 2008
Posts: 30
Rep Power: 0
dadoge is on a distinguished road
Re: Creare un sito caricando SWF esterni con Flash CS3

sempre io...

gloggando sono arrivato ad una domanda simile

Info tutorial: Creare un sito caricando SWF esterni con Flash CS3

la riporto per semplicità



Ciao Flep!
Sto cercando di studiare la logica di questo tutorial e devo dire che ci sono arrivato praticamente in fondo...;) l'unica cosa che non ho capito molto bene è una piccola cosa nella funzione cambiaSezione (m:MouseEvent)...la riga con cui assegni la nuova id riferita al bottone che si preme! Quell'id=m.target.parent.id+1 ??? Potresti spiegarmi un pò meglio a cosa si riferisce il percorso della nuova id?
Grazie

Ciao

Bella domanda la tua, molto acuta

Se hai notato, ogni bottone è all' interno di una MC, questo perchè la classe SimpleButton non è dinamica quindi non posso aggiungere ai bottoni una proprietà id per far sì che ad ogni id corrisponda la relativa sezione.
Quindi ho messo i bottoni dentro ad una MovieClip alla quale poi assegno un id.
In sostanza:
m.target è il bottone che è stato cliccato
siccome in quella riga devo risalire all' id per caricare la sezione giusta, allora risalgo alla MC che contiene m.target e cioè m.target.parent ed a questo punto recupero l' id.



Direi che il problema è il medesimo...molto chiara (come sempre) la risposta ma mi sfugge come assegnare id alla MovieClip...non capisco se nel lavoro di rimaneggiamento del codice mi sono perso qualcosa per strada (ho eliminato la parte entra)...

Ancora grazie e tutti i miei complimenti per l'eccellente lavoro fatto su questo sito (che in futuro non ripeterò ma è da considerarsi sottinteso)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #103 (permalink)  
Old 01-08-08, 18:33
Junior Member
 
Join Date: Mar 2008
Posts: 11
Rep Power: 0
carnifexino is on a distinguished road
Riferimento: Re: Creare un sito caricando SWF esterni con Flash CS3

Quote:
Originally Posted by DramaQueen View Post
ciao a tutti,
sono nuova del forum e ancora alle prime armi nello studio di actionscript quindi vi prego di perdonarmi se la mia domanda risulta banale.
Grazie mille Flep x il tutorial x creare un sito caricando swf esterni, l'ho seguito e sto cercando di modificarlo, soprattutto la parte modificata da zizzolo (che ringrazio).
Ora il mio problema e questo, gli swf esterni da me caricati richiamano un file xml che a sua volta carica una serie di immagini all'interno del filmato. Al caricamento la prima pagina ( home) si apre correttamente e le immagini vengono caricate. Quando clicco sul bottone per caricare l'altro filmato (sezione 1 per intenderci) il filmato si carica ma le foto no.
Non riesco a capire perche', dal momento che tutti i miei filamati esterni sono uguali, nella home le foto vengono caricate e nelle altre sezioni no.
Potete aiutarmi a capire, per favore?

grazie mille
Quote:
Originally Posted by Flep View Post
Ciao e benvenuta
Non ti da nessun errore ?
Ciao Flep, io ho un problema molto simile a quello sopracitato: nelle sezioni (non nella home) vorrei caricare degli swf esterni (gallerie di foto) che richiamano dei file .xml...
l'errore che mi da è questo:

Error #2044: ioError non gestito:. text=Error #2032: Errore di flusso. URL: file:///C|/Documents%20and%20Settings/ ecc, ecc... /foto.xml
at sezione1_fla::MainTimeline/sezione1_fla::frame1()

Suggerimenti?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #104 (permalink)  
Old 01-08-08, 18:50
Member
 
Join Date: Jul 2008
Posts: 30
Rep Power: 0
dadoge is on a distinguished road
Re: Creare un sito caricando SWF esterni con Flash CS3

ho appena pubblicato qualcosa di simile qui

Scroller di eventi - versione 2

dai un'occhiata ai sorgenti allegati...ad occhio mi pare tu abbia usato i fla e non gli swf, potrebbe essere quello l'errore...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #105 (permalink)  
Old 01-08-08, 19:50
Junior Member
 
Join Date: Mar 2008
Posts: 11
Rep Power: 0
carnifexino is on a distinguished road
Riferimento: Re: Creare un sito caricando SWF esterni con Flash CS3

Quote:
Originally Posted by dadoge View Post
ho appena pubblicato qualcosa di simile qui

Scroller di eventi - versione 2

dai un'occhiata ai sorgenti allegati...ad occhio mi pare tu abbia usato i fla e non gli swf, potrebbe essere quello l'errore...
ho usato gli .swf... .__.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Flash Multi Gallery
  #106 (permalink)  
Old 02-08-08, 16:39
Junior Member
 
Join Date: Mar 2008
Posts: 11
Rep Power: 0
carnifexino is on a distinguished road
Riferimento: Creare un sito caricando SWF esterni con Flash CS3

Questo errore me lo da solo con firefox... con explorer non li visualizza ma non da errori.
Ho provato ad informarmi quì: Adobe - Developer Center : Policy file changes in Flash Player 9 ma non ci ho capito granchè

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

  #107 (permalink)  
Old 02-08-08, 17:01
Member
 
Join Date: Jul 2008
Posts: 30
Rep Power: 0
dadoge is on a distinguished road
Re: Creare un sito caricando SWF esterni con Flash CS3

hai controllato i percorsi? io metto i file nella stessa cartella o sottocartella e uso i riferimenti relativi...oppure qualche errore nel file xml...

...se alleghi i file magari ci diamo un'occhiata...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #108 (permalink)  
Old 02-08-08, 17:16
Junior Member
 
Join Date: Mar 2008
Posts: 11
Rep Power: 0
carnifexino is on a distinguished road
Riferimento: Creare un sito caricando SWF esterni con Flash CS3

Gli .swf sono in una sottocartella chiamata "sezioni" la quale contiene anche i file .xml e delle sottocartelle che contengono a loro volta delle foto. I percorsi sono tutti giusti e gli swf funzionano presi singolarmente.

Nel main.as l'array è questo (ho 8 sezioni):

Code:
sezioni_array=new Array('sezioni/home.swf',
            'sezioni/sezione1.swf',
            'sezioni/sezione2.swf',
            'sezioni/sezione3.swf',
            'sezioni/sezione4.swf',
            'sezioni/sezione5.swf',
            'sezioni/sezione6.swf',
            'sezioni/sezione7.swf',
            'sezioni/sezione8.swf');
L'errore che mi da praticamente indica che i file .xml a cui puntano gli .swf non esiste o è errato... eppure quegli .swf funzionano bene se li provo singolarmente
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #109 (permalink)  
Old 02-08-08, 19:11
Member
 
Join Date: Jul 2008
Posts: 30
Rep Power: 0
dadoge is on a distinguished road
Re: Creare un sito caricando SWF esterni con Flash CS3

io nella mia struttura ho il file xml nella stessa cartella del swf...se lo metti nella sottocartella Sezioni dovrai cambiare il persorso di caricamento in LoadingXML.as...direi...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #110 (permalink)  
Old 02-08-08, 20:23
Junior Member
 
Join Date: Mar 2008
Posts: 11
Rep Power: 0
carnifexino is on a distinguished road
Riferimento: Re: Creare un sito caricando SWF esterni con Flash CS3

Quote:
Originally Posted by dadoge View Post
io nella mia struttura ho il file xml nella stessa cartella del swf...se lo metti nella sottocartella Sezioni dovrai cambiare il persorso di caricamento in LoadingXML.as...direi...
O mi sono spiegato male o hai letto male... gli xml sono nella stessa cartella degli swf (che è quella chiamata sezioni). Che a sua volta contiene la sottocartella con le foto (a cui puntano i file xml).

loadingXML.as? io ho solo il file main.as... da cui viene lo stralcio di codice che ho riportato.
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
Flash CS3 Creare un sito con Flash CS3 da ZERO!!!! Ruchino90 Flash CS3 Design 2 30-08-08 17:35
Photoshop CS3 Creare un layout per un sito internet Flep PhotoShop 4 21-07-08 12:59
Actionscript 3 Lettura File Esterni: workaround per evitare la security di flash Rocco2X Actionscript 3.0 avanzato 0 19-06-08 14:47
Creare una Chat dentro un sito completamente flash robinhood11 AIUTO utilità free 1 14-02-08 14:45
Info tutorial: Creare un sito caricando SWF esterni con Flash CS3 SWFish Actionscript 3.0 base 18 13-11-07 18:34


All times are GMT. The time now is 11:08.


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