Flash CS3 - Flash CS4

Free tutorials and scripts for all.
Actionscript 3.0

Preloader della Timeline con Flash CS3

This is a discussion on Preloader della Timeline con Flash CS3 within the Articoli e tutorials forums, part of the Flash CS3 e Actionscript 3.0 category; zzzzzzzzzzzzup ! Ecco un altro articolo ( il terzo della serie ) che tratta l' argomento preloders con Flash CS3. Abbiamo visto nel ...


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
  1 links from elsewhere to this Post. Click to view. #1 (permalink)  
Old 21-09-07, 09:05
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Preloader della Timeline con Flash CS3

zzzzzzzzzzzzup !

Ecco un altro articolo ( il terzo della serie ) che tratta l' argomento preloders con Flash CS3.
Abbiamo visto nel primo articolo Preloader con Flash CS3 come creare un preloader utilizzando la Document Class ed un' altra classe ( necessita un discreto livello di conoscenza Actionscript 3.0 ).
Poi abbiamo visto nel tutorial Preloader per principianti come poter creare un preloader scrivendo il codice solo sulla Timeline ( livello principianti ).
Entrambi i preloaders hanno una cosa in comune molto evidente e cioè il fatto che precaricano l' SWF principale in un altro SWF vuoto. Questo accade perchè la classe MovieClip di Actionscript 3.0 non ha più a disposizione i metodi getBytesLoaded e getBytesTotal, che sono stati spostati alla classe URLLoader che appunto è una classe che serve per caricare dei files esterni.

Vi ricordate che con Flash 8 ed Actionscript 2.0 si poteva creare un preloader nel primo keyframe della timeline che monitorasse i bytes dello stesso SWF mentre era in fase di caricamento ? ( appunto utilizzando i due metodi da me citati ).
Per chi si ricorda ( credo ognuno di voi ) sicuramente avrà provato a fare la stessa cosa con Flash CS3 senza ottenere lo stesso risultato.
Ma allora non è possibile ?!?
Certo che è possibile !* FlepStudio lo ha fatto.

Infatti in questo articolo vedremo come creare un preloader al proprio SWF senza doverne caricare un altro.
Lo vedremo in 2 modi:
- preloader dalla timeline
- preloader dalla Document Class

iniziamo la rhumba...

Partiamo con l' esempio del codice sulla Timeline.
Mi creo un FLA che salvo con nome ' test.fla ' .
Al suo interno mi creo un KeyFrame in più, in modo da averne due.
Scrivo uno stop() in entrambi i frames.
Metto tutto il contenuto nel secondo KeyFrame.
Inserisco un campo di testo dinamico nel primo KeyFrame che chiamo ' info_txt '.
Adesso, nel primo KeyFrame,dopo lo stop() che ho già scritto, inserisco il seguente codice:
Code:
this.addEventListener(Event.ENTER_FRAME,checkProgress);

function checkProgress(_progress:Event):void
{
	var bytes_loaded:Number=_progress.target.loaderInfo.bytesLoaded;
	var bytes_total:Number=_progress.target.loaderInfo.bytesTotal;
	var percent:Number=Math.round(bytes_loaded/bytes_total*100);
	info_txt.text=percent.toString()+' %';
	if(percent>=100)
	{
		this.removeEventListener(Event.ENTER_FRAME,checkProgress);
		this.gotoAndPlay(2);
		lets_go();
	}
}

function lets_go():void
{
	trace('ready to start');
}
Analizzando il codice, possiamo notare che lavorando con ENTER_FRAME recupero la proprietà loaderInfo della TimeLine alla quale chiedo di mostrarmi i valori dei bytes caricati e quelli totali. Faccio un rapporto tra i due valori e quando giunge il mometo che il rapporto è 100, fermo ENTER_FRAME, faccio avanzare di un frame la timeline dicendogli gotoAndPlay(2) e chiamo una funzione che sarà quella che darà il via a tutta l' applizacione ( in questo caso un semplice trace ).
Qualcuno di voi si starà chiedendo, come mai usa gotoAndPlay invece di un semplice nextFrame ? Oppure, come mai non toglie lo stop sul secondo frame ed utilizza gotoAndStop(2) ?
Mi piacerebbe darvi una risposta logica e ragionevole ma purtroppo non ce l' ho ancora. Ho fatto le prove con nextFrame e gotoAndStop ma non funzionava.
Però, con gotoAndPlay e lo stop al secondo frame funziona benissimo !

Passiamo ora ad esaminare come poter fare la stessa cosa dalla Document Class.
Ho lo stesso identico ' test.fla ', però questa volta associato ad una Document Class che chiamo ' Test.as ' ed il codice al suo interno è quasi identico a quello dell' esempio precedente:
Code:
package
{
	import flash.display.MovieClip;
	import flash.text.TextField;
	import flash.events.Event;
	
	public class Test extends MovieClip
	{
		public function Test()
		{
			stage.frameRate=31;
			this.addEventListener(Event.ENTER_FRAME,checkProgress);
		}
		
		private function checkProgress(_progress:Event):void
		{
			var bytes_loaded:Number=_progress.target.loaderInfo.bytesLoaded;
			var bytes_total:Number=_progress.target.loaderInfo.bytesTotal;
			var percent:Number=Math.round(bytes_loaded/bytes_total*100);
			info_txt.text=percent.toString()+' %';
			if(percent>=100)
			{
				this.removeEventListener(Event.ENTER_FRAME,checkProgress);
				this.gotoAndPlay(2);
				lets_go();
			}
		}
		
		private function lets_go():void
		{
			trace('ready to start');
		}
	}
}
Allego i files sorgente:
Attached Files
File Type: zip timeline_preloading.zip (5.81 MB, 162 views)

__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !

Last edited by Flep; 05-06-08 at 00:27..
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #2 (permalink)  
Old 10-12-07, 01:38
Junior Member
 
Join Date: Dec 2007
Posts: 14
Rep Power: 0
lorenz82 is on a distinguished road
Re: Preloader della Timeline con Flash CS3

Ho provato questo esempio ma mi da il seguente errore:

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

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

  #3 (permalink)  
Old 10-12-07, 07:32
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Re: Preloader della Timeline con Flash CS3

Non trova un oggetto...
Controlla che hai il campo di testo e che il suo nome istanza corrisponda a quello del tutorial: info_txt
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #4 (permalink)  
Old 10-12-07, 13:00
Junior Member
 
Join Date: Dec 2007
Posts: 14
Rep Power: 0
lorenz82 is on a distinguished road
Re: Preloader della Timeline con Flash CS3

si c'è l'info_txt
cmq mettendo questo sul secondo frame lo fa solo una volta, se no mi da l'errore in continuazione.

this.removeEventListener(Event.ENTER_FRAME,checkPr ogress);
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #5 (permalink)  
Old 15-05-08, 17:49
Junior Member
 
Join Date: May 2008
Posts: 11
Rep Power: 0
juanin is on a distinguished road
Re: Preloader della Timeline con Flash CS3

Anche io ho lo stesso errore.

Inoltre ho un problema con il FORUM quando mi loggo.
Mi compare una finestra bianca con scritto contatta l'amministratore.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

Flash Multi Gallery
  #6 (permalink)  
Old 15-05-08, 17:58
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Re: Preloader della Timeline con Flash CS3

Strana questa cosa della finestra bianca.

Potresti fare uno screenshot ?
__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #7 (permalink)  
Old 15-05-08, 18:17
Junior Member
 
Join Date: May 2008
Posts: 11
Rep Power: 0
juanin is on a distinguished road
Re: Preloader della Timeline con Flash CS3

Allegato.

Comunqe parlando di AS3 ho dei seri problemi a far funzionare il preloader.

Ho provato tutti i tuoi tutorial ma non mi va.

Sono riuscito a far andare tutto ma mi manca il preloader.

Ho un file con una documentClass con tutto il codice. Ho provato mettendo il preloader
sulla timeline stesso frame, frame diverso etc etc.

Niente.
Attached Images
File Type: jpg screen.jpg (77.7 KB, 9 views)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #8 (permalink)  
Old 15-05-08, 18:24
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,486
Rep Power: 6
Flep is on a distinguished road
Re: Preloader della Timeline con Flash CS3

ok, grazie dello screen, lo sistemo tutto.

Riguardo il preloader, la migliore soluzione in assoluto è sempre quella di caricare l' SWF dell' applicazione finita in un nuovo SWF.
__________________

 


I recommend: Essential Actionscript 3.0

- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
- I do not reply technicians pvt messages. Open a thread !
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote

  #9 (permalink)  
Old 03-07-08, 21:32
zeeroa's Avatar
Junior Member
 
Join Date: Dec 2007
Location: Pesaro (PU)
Posts: 5
Rep Power: 0
zeeroa is on a distinguished road
Re: Preloader della Timeline con Flash CS3

anch'io ho provato ed anche a me da l'errore:

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

ho seguito le istruzioni alla lettera ma niente

mai avuto problemi per preload con as2 all'adobe son tutti matti
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
Come sapre in che punto della timeline ci troviamo? Donovant Flash CS3 generale 2 18-05-08 12:16
Riferimento: Preloader della Timeline con Flash CS3 eturella Actionscript 3.0 base 1 15-11-07 15:18
Preloader su timeline zebraapois Actionscript 3.0 base 4 26-10-07 08:54
Dubbio sulla gestione della timeline kapitan0 Flash CS3 generale 8 29-08-07 15:57
Preloader della Timeline con Flash CS3 mariano.martucci AIUTO utilità free 5 06-08-07 10:53


All times are GMT. The time now is 12:56.


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