Visualizzazione dei risultati da 1 a 7 su 7

Discussione: interazione utente

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    32

    Action dolce Action ma che ti ho fatto???

    Ciao, ho trovato un problema con uno script
    che ritengo "assurdo", ma partiamo da zero.

    è mia intenzione creare un interazione
    con l'utente. Se lui inserisce un numero
    in un campo di testo, all'invio (con mouse
    o tastiera), flash risponde con una frase.
    le cifre da inserire sono tre
    da 000 a 999 (per un totale di mille, quindi).


    Sullo stage ho creato

    ------------------------------------

    un testo di imput dinamico denominato "cifra_txt"

    un pulsante "vai"

    un pulsante "reset" denominato "reset_pb"

    e un ulteriore campo di testo dinamico, denominato "messaggio_txt"

    (ometto di scrivere lo script del pulsante "reset" in quanto non
    ha creato nessun problema)
    ------------------------------------

    sulle azioni del pulsante ho inserito il seguente script:

    on (release, keyPress "<Enter>")
    {
    var mettiCifra:Number = Number(cifra_txt.text);
    if (mettiCifra === 000) {
    messaggio_txt.text = "frase uno";
    }
    else if (mettiCifra === 001) {
    messaggio_txt.text = "frase due";
    } else if (mettiCifra === 002) {
    messaggio_txt.text = "frase tre";
    } else if (mettiCifra === 003) {
    messaggio_txt.text = "frase quattro";
    } else if (mettiCifra === 004) {
    messaggio_txt.text = "frase cinque";
    } else if (mettiCifra === 005) {
    messaggio_txt.text = "frase sei";
    } else if (mettiCifra === 006) {
    messaggio_txt.text = "frase sette";
    } else if (mettiCifra === 007) {
    messaggio_txt.text = "frase otto";
    }

    }

    on (release) {
    if (isNaN(cifra_txt.text)) {
    messaggio_txt.text = "inserisci un numero nel campo e poi premi il pulsante";
    }
    }
    -----------------


    beh provando questo scrip non si noterà nessun errore e funzionerà benissimo.
    allora direte voi? Se aggiungo un altro else if.... con la cifra 008 (o 009)

    else if (mettiCifra === 008) {
    messaggio_txt.text = "frase otto";
    }

    flash mi da un errore e cioè:

    °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° °°°°°°°

    **Errore** Scena=Scena 1, livello=Livello 1, fotogramma=1:Linea 21: È previsto ')'
    else if (mettiCifra === 008)

    **Errore** Scena=Scena 1, livello=Livello 1, fotogramma=1:Linea 22: L'istruzione deve apparire all'interno del gestore on
    messaggio_txt.text = "frase nove";

    **Errore** Scena=Scena 1, livello=Livello 1, fotogramma=1:Linea 24: Rilevato '}' imprevisto
    }

    Totale errori ActionScript: 3 Errori segnalati: 3

    °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° °°°°°°°°°°°°°°°

    e pure io non ho fatto altro che copiare e incollare le varie
    "frasi" una dopo l'altra.
    Ma l'assurdità di tutto questo
    sta nella sostituzione della cifra.
    Se al posto di 008 inserisco 010
    lo script è perfetto.

    Insomma mi rileva l'errore con le cifre 8 e 9

    008 - 009 - 019 - 028 eccedera

    Pensavo di essere riuscita nel mio primo script
    ma purtroppo questa cosa mi ha bloccata e non so
    proprio come andare avanti (comunque sono novizia con flash, non
    ho una profonda conoscenza di Action Script 2.0, quindi è possibile che
    qualcosa l'abbia tralasciata).

    qualcuno puo spiegarmi dove ho commesso l'errore per rimediarvi???
    un grazie grande grande.
    Ciao


    Ciao Ciao

  2. #2
    Non ho la più pallida idea di come venga interpretato 008.
    Perchè usi === invece di == e 008 invece di "008" o di 8?
    [Il mio sito V2]
    ___________________
    I.m.The.Magic.Man

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    32
    1) perché 008 e non 8?
    perché il tutto è nato con
    la richiesta di inserimento
    di tre cifre che vadano da
    000 a 999. Potrei pure cambiare,
    perché no!!!

    2) per quanto riguarda ===
    ne ho inseriti tre e non due (==)
    perché da qualche parte, sul dizionario
    di Action Script 2.0 ho letto
    questo operatore come una
    "uguaglianza rigorosa".
    ----------------


    Comunque ho provato a fare la
    modifica, come mi hai suggerito
    ho inserito i numeri senza lo zero
    e con "==".

    pare che cosi funzioni

    GRAZIE :-)
    un bacione sulla fronte da
    Nonna Zakirya

    se inciamperò di nuovo in
    qualche erroraccio da novizia
    ti farò sapereeeeeeeeee
    ciao
    Ciao Ciao

  4. #4
    Originariamente inviato da Zakirya
    1) perché 008 e non 8?
    perché il tutto è nato con
    la richiesta di inserimento
    di tre cifre che vadano da
    000 a 999. Potrei pure cambiare,
    perché no!!!
    Il compilatore interpreta 008 esattamente come 8, a meno che non sia racchiuso tra virgolette, caso in cui non è più un numero ma una stringa, e va gestita di conseguenza.

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    32
    ma il tutto è gestito come numero e non come stringa

    insomma tutte le righe del codice sono identiche
    fra loro, cambia solo la cifra inserita.
    Quindi.... Quando qualcuno inserisce la cifra
    008 rispondi con la frase nove

    else if (mettiCifra === 008) {
    messaggio_txt.text = "frase otto";
    }

    non riesco però a comprendere perché in questo caso
    lo script non risulta corretto. Se scrivo 007, senza
    modificare nient'altro, lo script è corretto e quindi
    funziona.

    Comunque ho risolto togliendo i due zeri.
    Ora lo script funziona correttamente e posso
    andare avanti con questo progettino.
    Ciao Ciao

  6. #6
    non usare Number(cifra_txt.text);

    e confronta con


    else if (mettiCifra === "006") {
    messaggio_txt.text = "frase sette";
    }



    oppure se fai un casting a Number() leva gli zeri in confronto ...

    else if (mettiCifra === 6) {
    messaggio_txt.text = "frase sette";
    }


    castare a Number e confrontare con gli zero davanti non ha senso
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    32
    grazie per il consiglio.
    Del resto sono novizia.
    So che farò diversi capitomboli
    prima di reggermi bene in equilibrio
    grazie ancora per tutto.
    Ciao Ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.