Visualizzazione dei risultati da 1 a 10 su 10

Discussione: onPress dopo loadMovie

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    332

    onPress dopo loadMovie

    Salve ragazzi,

    ho un problema che non mi consente di andare avanti.
    Ho caricato in una istanza di clip una foto con loadMovie.
    Ora però devo trasformare l'istanza che contiene la foto in un pulsante.
    La riga di codice instanza.onPress = function(){ //azioni }
    dopo che ho caricato la foto non riesce a leggerla.. e quindi il puntatore non si trasforma in mano.
    qualche possibile soluzioen?
    grazie
    "Studiare è questo.
    Improvvisamente si comprende qualcosa
    che si era capita da tutta la vita,
    ma da un nuovo punto di vista".

  2. #2
    mi sa che devi istanziare il metodo a caricamento effettuato
    "La consapevolezza di Case suddivisa come perle di mercurio. La sua visione era sferica, come se una singola retina rivestisse la superficie interna di un globo che conteneva tutte le cose, se tutte le cose si potevano contare." —Neuromante, William Gibson (1984)

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    332
    Un modo l'ho trovato... usando l'evento MouseDown.
    In pratica con una if faccio controllare se il mouse collide con l'istanza e in caso affermativo faccio innescare l'azione dell'istanza-pulsante che dovrebbe carica un'ilteriore swf.

    Il progetto è formato da una serie di foto in miniatura ed ogni foto a sua volta deve caricare quella di dimensioni originali.

    Le miniature le ho creato con attachMovie, e l'innesco del caricamento delle foto di dimensioni originali con MouseDown.

    Ora però provo come mi hai detto... dovrei invocare il metodo al'evento onData??

    Grazie
    "Studiare è questo.
    Improvvisamente si comprende qualcosa
    che si era capita da tutta la vita,
    ma da un nuovo punto di vista".

  4. #4
    no, fai partire un intervallo o un enterFrame che tiene d'occhio il caricamento e a caricamento effettuato fai partire l'onPress

    ovvero:

    this.loadMovie("url.swf", palla);
    this.onEnterFrame=function() {
    var l=palla.getBytesLoaded();
    var t=palla.getBytesTotal();
    if(l>1024 && l==t) {
    trace("caricato");
    palla.onPress=function() {
    //quel che deve fare quando premuta
    }
    this.onEnterFrame=undefined;
    }
    }


    + o - s'intende...
    "La consapevolezza di Case suddivisa come perle di mercurio. La sua visione era sferica, come se una singola retina rivestisse la superficie interna di un globo che conteneva tutte le cose, se tutte le cose si potevano contare." —Neuromante, William Gibson (1984)

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    332
    Chiarissimo ma perchè quel 1024??
    "Studiare è questo.
    Improvvisamente si comprende qualcosa
    che si era capita da tutta la vita,
    ma da un nuovo punto di vista".

  6. #6
    perchè capita che quando non ha ancora ricevuto il numero di bytes totali, esso sia istanziato a 0, e così anche quelli caricati all'inizio, e allora capita che passi il controllo anche se non ha caricato tutto

    con quel 1024 gli dici di effettuare il controllo solo se ha caricato almeno 1kappa (1024 byte)... in tal modo il controllo non viene passato quando sono a 0

    potresti anche mettere 500 o 2000 è uguale alla fine
    "La consapevolezza di Case suddivisa come perle di mercurio. La sua visione era sferica, come se una singola retina rivestisse la superficie interna di un globo che conteneva tutte le cose, se tutte le cose si potevano contare." —Neuromante, William Gibson (1984)

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    332
    chiaro. Grazie
    "Studiare è questo.
    Improvvisamente si comprende qualcosa
    che si era capita da tutta la vita,
    ma da un nuovo punto di vista".

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    332
    Originariamente inviato da panta
    perchè capita che quando non ha ancora ricevuto il numero di bytes totali, esso sia istanziato a 0, e così anche quelli caricati all'inizio, e allora capita che passi il controllo anche se non ha caricato tutto

    con quel 1024 gli dici di effettuare il controllo solo se ha caricato almeno 1kappa (1024 byte)... in tal modo il controllo non viene passato quando sono a 0

    potresti anche mettere 500 o 2000 è uguale alla fine
    Sembra che ne voglia sapere proprio..
    Ho fatto come mi hai detto ho prima creato le istanze che devono contenere ognuna le miniature delle foto con attachMovie, poi in ognuna ho caricato la jpg e ho chiamato l'enterFrame da ciascuna istanza per controllare il caricamento... il comando trace non lo guarda proprio, sembrerebbe che lo salti.. cmq col MouseDown per fortuna funzia...
    "Studiare è questo.
    Improvvisamente si comprende qualcosa
    che si era capita da tutta la vita,
    ma da un nuovo punto di vista".

  9. #9
    No..il blocco di codice di panta funziona perfettamente.
    Prova però con delete onEnterFrame e non usare i this potresti nel tuo caso averli usati in maniera errata:

    codice:
    loadMovie("mio.swf",palla);
    onEnterFrame = function(){
    var l = palla.getBytesLoaded();
    var t = palla.getBytesTotal();
    if(l > 1024 && l >= t) {
    palla.onPress=function() {
    /* QUI VANNO LE OPERAZIONI DA ASSOCIARE AL EVENTO PRESS DELLA CLIP */
    }
    delete onEnterFrame;
    }
    }
    Ciao

  10. #10
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    un po' datato

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.