Traduttore
Categorie
Archivio

ActionScript 3.0 onEnterFrame

In ActionScript 3.0, il modello di eventi telaio è stato modificato rispetto alla versione di ActionScript 2.0 un po '. In ActionScript 2.0, se si vuole eseguire un compito ogni volta che entrò in una cornice, è necessario digitare

  onEnterFrame = function () (
    trace ("Do Something");
 ) 

In ActionScript 3.0, è necessario utilizzare un formato listener di eventi per eseguire un evento di cornice. Per esempio ...

 addEventListener (Event.ENTER_FRAME, myFunction); myFunction funzione (evento: Event) (trace ("Do Something");) 

E 'un po' più complicato rispetto al vecchio modo, ma ActionScript 3.0 apre un mondo completamente nuovo di possibilità di programmazione.

28 Responses to "ActionScript 3.0 onEnterFrame"

  • DameonFlashDemon:

    Sono d'accordo, si apre modo più porte. Sarà solo a me prendere un po 'di tempo per abituarsi anche esso. Il lato positivo mi sento sempre più come un vero e proprio programmatore con 3.0. lol.

  • Flashiro:

    Ora, come è più complicato, buono per i programmatori, male per il progettista

  • Penso che sarà solo essere come i giorni di switch dot notation, vi è uno curva di apprendimento ma alla fine il progettista e il programmatore si riuniranno a la metà. Penso che ciò che Adobe ha da fare è smettere di andare avanti per un po 'e lasciare che tutti noi recuperare. Se qualcuno si ricorda direttore, questo è quello che ha ucciso direttore. Macromedia tenuto venuta fuori con il "nuovo e migliorato i metodi" prima che lo conosceva i libri sono stati 12 pollici persone di spessore e, infine, ha detto questa vite! e quando qualcosa di semplice e veloce, che all'epoca era Flash. Quindi sono d'accordo AS3 è meglio, ma se AS4 esce ed è di nuovo completamente diversa - mi cadrà Flash come una cattiva abitudine e mai guardare indietro. e inizia a usare semplici e veloci che in questo momento sembra che sta andando essere Blend di Microsoft, Visual Studio e Silverlight (WPF) Trinità.

  • Ho sviluppato in Silverlight e con la versione 1.0, non è pronto per competere a livello con il flash. Non ha equivalenti al clip filmato flash, ad esempio nulla. Riutilizzare uno storyboard unico su più pulsanti etc richiede javascript personalizzato per modificare gli obiettivi del storybaord di partita tutto quello che il ribaltamento. Tutto è fattibile, ma la versione 1.0 non è ancora lontani. Non vedo l'ora quando è lì, però, perché Silverlight è promessa. Per quanto mi riguarda sono davvero curioso di vedere come la battaglia tra Flex e Silverlight sta per Shape Up.

  • Mux:

    mi potete aiutare con un codice? iam cercando di fare un pulsante che si espande quando rotolo del mouse su di esso e crolla quando il mouse è tirata: thx \ aiuto

    this.stop ();

    importazione flash.events .*;

    rewind var = 2

    this.addEventListener (Event.ENTER_FRAME, enterf);
    enterf funzione (e: Event) (
    if (rewind == 1) (
    prevFrame ();
    )
    )

    this.addEventListener (MouseEvent.MOUSE_OVER, over)
    funzione su (evento: MouseEvent) (
    rewind var = 2;
    play ();
    )
    this.addEventListener (MouseEvent.MOUSE_OUT, out)
    fuori funzione (evento: MouseEvent) (
    rewind var = 1;
    )

  • Mux:

    btw .. il problema era che il pulsante smette di espansione e dont collasso: \

  • Ryan :

    Fare AS3 in Flex è abbastanza carino .. in un primo momento è strano che non IDE interfaccia utente basata, come qualcuno tirò il piano da sotto.

    Poi, una volta a ottenere il blocco di esso, la libertà e l'intellisense è impressionante. Le librerie di codice fuori dalle comunità sono grandi .. E questi blog e forum, naturalmente, sono il grasso in ingranaggi. Ottimo lavoro

  • Ryan :

    OnEnterFrame è ancora il miglior modo per avere qualcosa di esecuzione costantemente?

    cioè: io ho un folletto lo voglio kinda galleggianti intorno casualmente sullo schermo, ho il mio ascoltatore di eventi onEnterFrame esegue mio MoveStuff (), è opera .. ma è questo il modo migliore per raggiungere questo obiettivo?

  • Julio Villa:

    Sono totalmente nuovo ActionScript 3.0 ... Sto cercando di caricare un file SWF esterno con un evento cornice, in un movieclip sulla MainStage. Come faccio a fare questo ... potrei farlo in ActionScript 2.0 con loadMovie (), ma questa è tutta la scienza a razzo per me. PLEASE HELP!

  • marrone:

    AS3 è una cattiva idea.
    L'AS2 è migliore di AS3 per i progettisti, ma che utilizzando flash? - Designer. Adobe dovrebbe essere cambiando, per il progettista.

  • Simon:

    Sono completamente d'accordo con Damon Sanchez. Flash è in corso lo stesso (sbagliato) modo di Direttore aveva fatto con 'linguaggio'. Ogni volta che Adobe ActionScript fare 'meglio', ci vogliono mesi per me recuperare. Ho completamente ignorato 3,0 fino ad ora perché è così completamente diverso a 2.0. Flash è sempre stato per i progettisti, perché cambiarlo? Ci sono molto meglio le applicazioni e linguaggi di scripting là fuori per gli sviluppatori. Flash ha (aveva) è di nicchia - è stata una grande leggerezza mezzo tra design e sviluppo e ha funzionato a meraviglia. Ora, se Flash è stato in grado di fare cose incredibili grazie al nuovo linguaggio di scripting che avevo capito .. ma è solo rendendo semplici compiti più difficili per la gente come me (designer) e più familiare per gli sviluppatori (non io). Allo stesso tempo, però, Adobe sta automatizzando le operazioni semplici, come l'interpolazione (sia tramite script e ora, con CS4, durante la creazione). Ridicolo. Sì ho potuto attaccare al 2,0, ma poi cadevo dietro - che non può permettersi di fare in questo settore.
    Stanno cercando di rimanere un passo avanti ma la concorrenza del loro nuovo, rendendo le persone ad imparare un nuovo linguaggio di scripting, non possono rischiare di Adobe loro utenti il passaggio a una nuova applicazione dal momento che stanno imparando una nuova lingua in ogni caso? E per quanto riguarda l'istruzione? Come sono gli studenti mai andare a imparare quando i loro insegnanti sono tanto nuovi come sono?
    Non contento.

  • PapaJ:

    marrone @

    AS3 non è male, e Flash non viene utilizzato esclusivamente da progettisti (designer Sono me stesso BTW). La piattaforma Flash è ora una soluzione valida ed efficiente per lo sviluppo e la distribuzione di desktop e applicazioni internet.

    Actionscript è ormai un oggetto orientato lingua, e nessuno che si rispetti, vi dirà che lo sviluppo OOP (nonostante un codice di apprendimento più ripida) è il modo * solo * a sviluppare funzionalità multimediali.

    Veramente mi dà fastidio quando le persone bussare AS3 dicendo che succhia - solo perché non lo si capire e cambiare alcune delle vostre (bad) design / development abitudini di industria standard riconosciuti è alcuna ragione per respingere tale uno aggiornamento ed indispensabili al lingua.

    Fortunatamente per voi ludites, Adobe sta creando un altro IDE Flash chiamato 'Flash Catalyst', al fine di consentire ai progettisti di creare rapidamente funzionalità senza dover toccare il codice ( http://labs.adobe.com/technologies/flashcatalyst/ ). Sembra un app bene, e si adatta bene al> design sviluppare> distribuire processo - si spera che smetterò whining peones come te da sbattere la testa contro la graziosa pareti di mattoni.

  • PapaJ:

    doh!

    che dovrebbe essere '... curva di apprendimento più ripida ...'

  • Mike D:

    Sucks AS3

  • Grazie per l'input Mike costruttivo.

  • Action Script 3 è potente, ma non vicino al potere e misura per altri linguaggi OOP quali ASP.Net C #. Quindi credo che dove la mia denuncia sia, se Adobe sta andando cadere una bomba su di noi, poi fare lo ... e farla finita ... rendere l'azione just-come-se-non more potenti di Script C #. Ma i cambiamenti incrementali costante con l'incarnazione di essere diverso da quello olisticamente la prossima mi sta facendo impazzire. Di nuovo mi sto lamentando perchè ci ho messo un anno per imparare di nuovo AS3, sono felice adesso tutti Kung Fu per i problemi ma dude, se AS5 è diverso da quello olisticamente AS3-I 'M FATTO con Adobe e di passare a Silverlight e WPF Blend. Che tra l'AS5 momento rotolavano avrà come ubiquità quanto SWF.

  • PapaJ è giusto ma AS3 succhia ancora!

  • mike :

    grandi clienti vogliono Flex RIA basate in questi giorni ... "bella" mostra di foto e "appiccicoso" banner non sono più della domanda. Non si può impressionare la gente o fare un centesimo più con qualche AS2 mago-bang ... ho lavorato con il flash per 9 anni in modo AS3 è stato un enorme successo al mio modo di pensare, di orgoglio, il mio mantra tutto veramente e lo ha wow porte aperte che pensavo non sarebbe mai stato a mia disposizione. Sono stato costretto ad adattarsi, perché mangiare è importante per me, e si rivelò essere una benedizione per tutti gli sviluppatori AS2 esistenti, che si impegna a AS3. Tutti gli altri si rientra nella categoria di washout tanto bisogno nella mia mente. L'industria aveva bisogno di una purga se ;) .

    -M

  • Giovanni:

    Ciao chaps,
    Ho un grosso problema.
    Cerco di andare avanti e iniziare a usare AS 3.0
    Ecco cosa ho bisogno.
    Il carico di inserire un file swf telaio esterno.
    Quando la linea del tempo colpisce fotogramma 20, "onEnterFrame cancellare (rimuovere il file swf)".
    Il fotogramma 21 caricare il file SWF diversi, quando colpisce telaio 50, gotoAndStop (1);
    Qualcuno può fare il mio giorno?
    Grazie in anticipo.
    Giovanni

  • Giovanni:

    Sono riuscito a creare il file SWF che caricherà i file SWF di altri dopo 5 sec.
    Che cosa ho bisogno ora è: dopo 5secs il primo file swf per essere rimosso e sul telaio accanto a caricare un nuovo bu file swf solo modificando le
    var my_next_swf: URLRequest = new URLRequest ("swf1.swf");

    a

    var my_next_swf: URLRequest = new URLRequest ("swf2.swf");
    e
    swf_secs var: Timer = new Timer (5000, 1);
    a
    swf_secs var: Timer = new Timer (10000, 1);

    Ecco il codice completo.

    var my_next_swf: URLRequest = new URLRequest ("swf1.swf");
    var next_swf_loader: Loader = new Loader ();
    next_swf_loader.load (my_next_swf);
    addChild (next_swf_loader);

    swf_secs var: Timer = new Timer (5000, 1);

    swf_secs.addEventListener (TimerEvent.TIMER, doit_next_swf);

    funzione doit_next_swf (evento: TimerEvent): void
    (

    nextFrame ();

    / / RemoveEventListener (Event.ENTER_FRAME,?);
    )

    swf_secs.start ();

  • Honza :

    Qualcuno potrebbe aiutarmi a convertire 2,0-3,0
    Im avvitato ...

    _root.onEnterFrame = function () (
    if (_root._ymouse200) (
    myVar = true;
    )
    if (_root._xmouse100 e myVar == true) (
    imgBar.nextFrame ();
    imgBar.nextFrame ();
    Else ()
    imgBar.play ();
    )
    if (_root._xmouse> 50 & & _root._xmouse <350 & & myVar == true) (
    imgBar.stop ();
    )
    )

  • Honza :

    o meglio

    _root.onEnterFrame = function () (
    if (_root._ymouse200) (
    myVar = true;
    )
    if (_root._xmouse100 e myVar == true) (
    imgBar.nextFrame ();
    imgBar.nextFrame ();
    Else ()
    imgBar.play ();
    )
    if (_root._xmouse> 50 & & _root._xmouse <350 & & myVar == true) (
    imgBar.stop ();
    )
    )

  • Diana :

    per favore ho bisogno di convertire AS2 flashplayer 7.0 per AS3 Flash Player 10.
    il codice è:

    / / Ordenadas de Origen
    orig_x = this._x;
    orig_y = this._y;

    / / Asignada Profundidad
    profundidad = 20; / / No olviden el valor ajustar

    / / Ajustamos su posición Z en la escena
    this.swapDepths (profundidad);

    onEnterFrame = function () (
    / / Obtenemos la ordenada X de destino
    dest_x = (((210 - _root._xmouse) / 210) profundidad *) + orig_x;
    / / Incremento Obtenemos el en Movimiento de X
    incr_x = (dest_x - this._x) / 10;
    / / Ajustamos la posición en X
    + This._x = incr_x;

    / / Obtenemos la ordenada Y de destino
    dest_y = (((130 - _root._ymouse) / 130) profundidad *) + orig_y;
    / / Incremento Obtenemos el movimiento de en Y
    incr_y = (dest_y - this._y) / 10;
    / / Ajustamos la posición en X
    + This._y = incr_y;
    )

  • M. Paaske:

    Sto cercando di fare una mossa flash a un sito php quando reatchen è fine. Così ho provato questo spam ma solo il mio browser con nuove schede.

    addEventListener (Event.ENTER_FRAME, e);

    funzione e (event: Event): void
    (
    var link: URLRequest = new URLRequest ("http://www.google.com");
    )

    stop ();

  • Sono frustrata come il resto di voi con l'apprendimento AS3. Ho una laurea di grafica, design e raccolse Flash (AS2), perché mi adatto meglio.
    Ora, mentre io sto diventando abbastanza veloce e competente a un livello intermedio superiore, tutto quello che ho imparato è più applicabile.

    Fortunatamente, ho accesso a un sacco di video di formazione, ecc ho preso pagine e pagine di appunti, facendo parte di progetti swf di prova, e facendo io stesso scrivere codice a mano invece di copiare e incollare ... Tutti a fare un gruppo di lavoro navigazione che i file SWF carica / scarica swf esterno in un contenitore. Qualcosa che posso fare nel mio sonno in AS2 sembra ora assumere centinaia di righe di codice ridondante perché non sono utilizzati per creare funzioni generiche / variabili che possono essere "riciclate".

    Sto ancora cercando di capire un modo slick per avere un caricatore vuoto in attesa di contenuto (una pagina esterna swf) in modo che la mia premere il tasto popolerà, ma poi hanno la successiva pressione del pulsante Rimuovi swf attuale e carico di quella successiva. Per ora sono accatastamento sopra di se stessi.

    Comunque, volevo solo sfogare perché io sono l'unico tipo flash nel mio gruppo qui, e nessuno fa veramente quello che sta succedendo qui! :?

  • Ecco il mio codice del pulsante dal modo in cui (al momento) Ha un sacco di roba commentata come ho spegnere e su pezzi di codice. Oh-e vi prego di scusare il mio convenzioni di denominazione goofy! Quando è davvero tardi e sono stanco, e cercando di ricordare quale parte di una funzione / var è nelle mie parole e non AS3 cerco di mantenere il senso dell'umorismo su di esso!

    -------------
    btn1_mc.buttonMode = true;
    btn2_mc.buttonMode = true;

    btn1_mc.useHandCursor = true;
    btn2_mc.useHandCursor = true;

    var titsLoader: Loader;
    / / Var boobsLoader: Loader;

    var urlReq: URLRequest;

    var ballsUrl: String = "balls.swf";
    var boobsUrl: String = "boobs.swf";

    addEventListener (Event.ENTER_FRAME, myFunction);
    funzione myFunction (event: Event) (
    trace ("Do Something");
    )

    Badass funzione (BA: MouseEvent): void (
    if (ba.target == btn1_mc) (
    / / TitsLoader = new Loader ();
    urlReq = new URLRequest (ballsUrl);
    titsLoader.load (urlReq);
    mt_mc.addChild (titsLoader);
    )
    if (ba.target == btn2_mc) (
    titsLoader = new Loader ();
    urlReq = new URLRequest (boobsUrl);
    titsLoader.load (urlReq);
    mt_mc.addChild (titsLoader);
    )
    )

    / / UnloadMovies funzione (e: Event): void (
    / / RemoveChild (titsLoader);
    / / RemoveChild (titsLoader);
    / /)

    btn1_mc.addEventListener (MouseEvent.CLICK, Badass);
    btn2_mc.addEventListener (MouseEvent.CLICK, Badass);
    ------------

    Questo è solo un test laterale file per vedere come diavolo posso mettere in / estrarre i file SWF mia pagina ..
    I havent ottenuto di lavorare ancora del tutto.

  • Zach :

    Grazie per questo. Molto utile.

  • SCOTT:

    Simon è un deficiente. Flash ha piena capacità di qualsiasi altro linguaggio di scripting AS3 è il modo più logico e facile da usare. stanno facendo il programma più stronzo. non ci vuole tempo per imparare AS3 se sai AS2. Usa il tuo cervello e imparare qualcosa di tecnologia è di circa l'avanzamento non ancora seduto nello stesso posto per sempre.

Lasci una risposta