Pagina Iniziale | Preferiti Comunity: Login | Registrati | Newsletter | Forum | Concorsi Newsgroup
Canali: Hardware | Software | Files | Webmaster | Cellulari | Shop
Nel sito: News | Articoli | Files | Manuali | Consigli PC | Schede cellulari | Programmaz. | Hosting | Motori Ricerca | Glossario | Link
Servizi: Shopping | Forum | Crea un BLOG | Cartucce Compatibili | Tool News |   Sponsor: Automazione Industriale
  Articoli

Recensioni
Consigli per PC


  News e files

Software
Telefonia
Internet
Tecnologia
Files e Download


  Manualistica

Guide HW/SW
Scripts ASP
Scripts HTML
Scripts Java
Scripts Delphi
Glossario


  Shopping

Hardware
Software e Giochi
Elettronica
Cinema e Film
Console e Accessori
Prodotti Ufficio
Formazione e Corsi

Tieniti aggiornato sul mondo della tecnologia con la nostra newsletter!
La tecnologia sulla tua
casella e-mail

[Info Newsletter]


Concessionaria Pubblicitaria

<< News Precedente [Fine Pagina] News Successiva >>
Flash - Il ciclo If-Else-Else If

Un articolo di: Warp9 del 04/04/2002      Letture: 14644

 
Capita molto spesso, durante un'animazione, che si debba far prendere al programma o all'utente una decisione che influenzerà il normale corso dello script.
Quindi possiamo affermare che una decisione condiziona un programma a fare una cosa piuttosto che un'altra.

Se stiamo a guardare, tutto è frutto di scelte che condizionano un particolare flusso di avvenimenti (ci mancava il filosofo...).
Se ci alziamo una mattina, sicuri di acchiappare la moto per uscire e appena mettiamo il naso fuori dalla finestra ci accorgiamo che sta piovendo a catinelle, a meno che non siamo sciroccati o masochisti sicuramente cambieremo idea e prenderemo macchina e ombrello.

Ecco, abbiamo appena eseguito quello che in programmazione viene definita Istruzione Condizionale e cioè abbiamo eseguito un'azione in base ad una particolare condizione.

Anche Flash può ragionare così (non che si accorga se piove, ma qualcosina può fare anche lui...).

Di che cosa è composta un'istruzione condizionale ?
Nella normale programmazione di tre parti ben distinte, delle quali due viaggiano sempre accoppiate, mentre una terza è opzionale e aumenta le possibilità di esecuzione: IF - THEN - ELSE che in italiano si traducono in SE - ALLORA - OPPURE e l'esecuzione di questa istruzione porta sempre a due soli risultati: Vero e Falso.

Naturalmente Flash non poteva essere come gli altri, quindi le istruzioni diventano If - Else - Else If.

Cominciamo con un esempio base (solo If):

If (inserimento eq "flash" or inserimento eq "Flash" or inserimento eq "FLASH")
Set Variable: "risultato" = "Bravo, hai scritto quello che ti ho detto"
End If

Questo ciclo controlla che la variabile inserimento contenga la stringa flash oppure Flash oppure FLASH (tre modi di scrivere la stessa parola).
Se la variabile contiene questa stringa (e quindi la condizione è Vero), allora setta la variabile risultato con la stringa indicata.
In caso contrario (e quindi la condizione è Falso), non esegue il Set Variable ma salta a End If dove di seguito potranno essere presenti altri comandi.

Evolvendo un po' le cose si può fare questo esempio (If - Else):

Qui, il movie è stato istruito ad accettare come buona e cioè come Vero, la condizione dell'inserimento della parola Flash all'interno della casella di fianco al pulsante.
Nel caso si provi a digitare un'altra parola, la condizione restituirà Falso e il movie si comporterà di conseguenza.
Il pulsante fa partire questo controllo.

La serie di actions usate sono le seguenti:

On (Release)
If (inserimento eq "flash" or inserimento eq "Flash" or inserimento eq "FLASH")
Set Variable: "risultato" = "Bravo, hai scritto quello che ti ho detto"
Else
Set Variable: "risultato" = "Non mi pare che tu abbia scritto quello che ti ho detto..."
End If
End On

Tradotto in umane parole, funziona così:

On (Release)
Al rilascio del pulsante.
If (inserimento eq "flash" or inserimento eq "Flash" or inserimento eq "FLASH")
Se la variabile inserimento contiene la stringa flash oppure Flash oppure FLASH (e quindi la condizione è Vero).
Set Variable: "risultato" = "Bravo, hai scritto quello che ti ho detto"
Allora setta la variabile risultato con questa stringa (praticamente ci si occupa del THEN senza doverlo scrivere in maniera visibile, basta inserire l'istruzione subito sotto il comando If).
Else
Oppure (se la condizione è Falso).
Set Variable: "risultato" = "Non mi pare che tu abbia scritto quello che ti ho detto..."
Setta la variabile risultato con questa stringa.
End If
Fine del ciclo di controllo.
End On Fine del controllo sul pulsante.

Ed ecco un terzo esempio (If - Else - If - Else...)

Qui abbiamo programmato il movie e rispondere in maniera differente per ognuna delle parole previste e anche per quelle impreviste... :-)

Questo è il codice inserito nel pulsante:

On (Release)
If (inserimento eq "sole" or inserimento eq "Sole" or inserimento eq "SOLE")
Set Variable: "risultato" = "Allora lascio a casa l'ombrello"
Else
If (inserimento eq "nuvolo" or inserimento eq "Nuvolo" or inserimento eq "NUVOLO")
Set Variable: "risultato" = "Sarà il caso di prendere l'ombrello ?"
Else
If (inserimento eq "piove" or inserimento eq "Piove" or inserimento eq "PIOVE")
Set Variable: "risultato" = "Allora prendo l'ombrello"
Else
If (inserimento eq "nevica" or inserimento eq "Nevica" or inserimento eq "NEVICA")
Set Variable: "risultato" = "Andiamo a sciare ?"
Else
Set Variable: "risultato" = "Come scusa ? Non ho capito..."
End If
End If
End If
End If
End On

Come si può notare, ognuna delle risposte ha un ciclo if dedicato che controlla l'inserimento e decide dove andare.
Questa tecnica è detta dei cicli nidificati, cioè uno dentro l'altro.

A questo punto i puristi della programmazione in Flash potranno storcere il naso, dato che la stessa cosa si sarebbe potuta realizzare con il sistema if - else if e cioè:

On (Release)
If (inserimento eq "sole" or inserimento eq "Sole" or inserimento eq "SOLE")
Set Variable: "risultato" = "Allora lascio a casa l'ombrello"
Else If (inserimento eq "nuvolo" or inserimento eq "Nuvolo" or inserimento eq "NUVOLO")
Set Variable: "risultato" = "Sarà il caso di prendere l'ombrello ?"
ecc. ecc.

Che cosa cambia ?
Un tot di end if in meno al fondo.
Sinceramente non vedo molto la differenza, è tutta una questione di come ci si trova meglio.
Sappiate comunque che funzionano tutti e due.

Ecco fatto.
Chiaramente questi sono solo alcuni esempi e il ciclo if non si limita solo a questo.
Avendo la possibilità di gestire un controllo versatile come questo si possono far cambiare valori a delle variabili, dirigere un flusso di dati in una direzione piuttosto che in un'altra oppure far decidere in base ad un range di valori diversi e quindi far reagire il programma in maniera più "morbida" rispetto al semplice sì o no.

 
Versione originale © Warp9



[Indietro]    [Su]      [Home]      [Commenti]      [V. Stampabile]

Commento di Anonimo, scritto il 24/03/2004 alle 10:54:04
non si legge una beata fava!

Commento di Anonimo (ip: 82.60.64.153), scritto il 21/09/2005 alle 19:03:58
gia.... proprio una beata fava...

Commento di Anonimo (ip: 151.44.43.169), scritto il 07/02/2006 alle 12:35:55
nn si legge nulla buuuu

Commento di Anonimo (ip: 62.101.126.233), scritto il 29/03/2006 alle 12:56:32
polli, selezionate il testo e vedrete che magicamente il testo apparirà ai vostri occhi..

Commento di Anonimo (ip: 151.37.127.52), scritto il 05/05/2006 alle 16:58:35
rs6ue578

Commento di Anonimo (ip: 151.37.127.52), scritto il 05/05/2006 alle 16:58:40
rs6ue578

Commento di Anonimo (ip: 151.37.127.52), scritto il 05/05/2006 alle 16:58:41
rs6ue578

Commento di Anonimo (ip: 151.37.127.52), scritto il 05/05/2006 alle 16:58:41
rs6ue578

Commento di Anonimo (ip: 151.37.127.52), scritto il 05/05/2006 alle 16:58:42
rs6ue578

Commento di Anonimo (ip: 84.221.159.91), scritto il 26/02/2007 alle 19:12:44
non funziona niente grazie per il tentativo...

Commento di Anonimo (ip: 79.1.76.79), scritto il 16/10/2007 alle 11:44:31
ma testo giallo su sfondo chiaro dite che migliora la visibilità?
ho perso 2 diottrie per leggere....

Commento di Anonimo (ip: 151.48.170.0), scritto il 13/05/2009 alle 23:14:41
sei daltonico ????

Commento di Anonimo (ip: 62.94.185.134), scritto il 25/06/2009 alle 18:34:27
Il problema non è in chi non riesce a leggere ma in chi ha pubblicato una pagina con testo giallo su sfondo chiaro.
QUESTO SI CHE SIGNIFICA ESSERE FURBI E INTELLIGENTI...

Commenta questa notizia:
Non hai ancora fatto il
Login, puoi inserire commenti solo come anonimo.
ATTENZIONE: il tuo IP verrà memorizzato e mostrato a fianco del commento; con la pressione del tasto invia commento si esprime il consenso alla pubblicazione di tale informazione personale.
A discrezione dello staff, i commenti ritenuti non adatti od offensivi potranno essere rimossi. Nel caso di utilizzo di espressioni volgari od offensive il comportamento verrà segnalato al provider interessato.
Se non ti sei ancora registrato, cosa aspetti? Registrati subito.

Da ora puoi discutere dei problemi informatici anche sul nostro FORUM

Testo del commento:


  News correlate
 La funzione di stringa SUBSTRING
 Le variabili e Flash
 Il movimento in Flash
 Flash - preloading
 Flash - Il ciclo If-Else-Else If
 Effetto Ripple
  Ultime dal Forum

essay other planning politician
sample essay about myself for spm
info essays
writing website
opinion essays on stereotypes
different types research paper format
essay on my tour to dubai
panofsky renaissance six essays
prospect diazepam 5mg

Comunicazioni / Note Legali / Staff / Collabora / Pubblicità / Privacy / Contatti


Triboo Media s.r.l. (società socio unico) - Viale Sarca 336 - Edificio 16, 20126 Milano (MI) Cap. Soc. 1.250.000,00 euro i.v. - P.IVA, C.F. e CCIAA di Milano IT06933670967 - REA MI-1924178 tel. +39 02 64741470 - fax +39 02 64741494 Società sottoposta alla direzione e coordinamento di TRIBOO SPA - all rights reserved CAP. SOC. EURO 28.740.210 I.V. - P.IVA 02387250307 - COD. FISC. e numero iscrizione al registro delle imprese CCIAA MI : 02387250307 tel.+39 02 64741401 - fax + 39 02 64741491. Utenti Connessi: 341


Pagina creata in 0,09sec. Powered by JuiceADV S.r.l.

Stats v0.1 (0,000sec.)