Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610

    [mx]problema con metodo comp

    purtroppo ho ancora un'altro problema speriam sia l'ultimo....
    il discorso è il proseguo del topic

    http://forum.html.it/forum/showthrea...9&goto=newpost

    ora il problema è questo :
    allora da un metodo di un componente
    faccio questo :
    codice:
    cmpPreload.prototype.preload = function(param) 
    {
    this._parent[this.mc].createEmptyMovieClip("jpgc", 1);
    this._parent[this.mc].jpgc.loadMovie(this.file);
    this.prevpreload(this._parent[this.mc].jpgc);
    }
    
    
    cmpPreload.prototype.prevpreload = function(param) 
    {
    this.Total = this._parent[param].getBytesTotal();
    this.Charge = this._parent[param].getBytesLoaded();
    
    if (this.Charge>=this.Total) {
    	delete this.onEnterFrame;
    	stop();
    	this.callEndPreload();
    } else {
    	this.onEnterFrame = function() {
    	this.prevpreload(param);
    	};
    }
    //solo che purtroppo tutto questo non funziona penso che sia sempre un
    //problema di percorsi solo che ... ???

  2. #2
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    A parte il resto:

    codice:
    cmpPreload.prototype.prevpreload = function(param) 
    {
    	// in questo caso "param" è un riferimento
    	// assoluto al movieclip, non una stringa
    	this.Total = param.getBytesTotal();
    	this.Charge = param.getBytesLoaded();

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Originariamente inviato da negatyve
    A parte il resto:

    codice:
    cmpPreload.prototype.prevpreload = function(param) 
    {
    	// in questo caso "param" è un riferimento
    	// assoluto al movieclip, non una stringa
    	this.Total = param.getBytesTotal();
    	this.Charge = param.getBytesLoaded();
    }
    purtroppo ce ancora un problemino ed è questo allora data questa funzione:
    codice:
    cmpPreload.prototype.prevpreload = function(param) {
            if (this.level>-1){
    	this.Total = param.getBytesTotal();
    	this.Charge = param.getBytesLoaded();
    
    	//debug
    	trace("-----------");
    	trace(this.Total);
    	trace(this.Charge);
    	trace("-----------");	
    	}
    	this._parent[this.mcprogress].setByteTotal(this.Total);
    	this._parent[this.mcprogress].setByteParzial(this.Charge);
    
    //non capisco perchè si blocca infatti al primo ciclo
    //this.charge e this.total risultano uguali e quindi si blocca
    //se invece commento questa parte funziona tutto bene  :dhò: 
    
                    	
                    if (this.Charge>=this.Total) 
                    {
    		delete this.onEnterFrame;
    		stop();
    		this.callEndPreload();
                    
            	} else {
    		this.onEnterFrame = function() {
    			this.prevpreload(param);
    		};
    	}
    };

  4. #4
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    codice:
    cmpPreload.prototype.preload = function(param)
    {
    	this._parent[this.mc].createEmptyMovieClip("jpgc", 1);
    	this._parent[this.mc].jpgc.loadMovie(this.file);
    	this.prelID = setInterval(this, "prevpreload", 30, this._parent[this.mc].jpgc);
    };
    cmpPreload.prototype.prevpreload = function(param)
    {
    	if (this.level > -1) {
    		var Total = param.getBytesTotal();
    		var Charge = param.getBytesLoaded();
    		//debug
    		trace("-----------");
    		trace(Total);
    		trace(Charge);
    		trace("-----------");
    		// debug
    		this._parent[this.mcprogress].setByteTotal(Total);
    		this._parent[this.mcprogress].setByteParzial(Charge);
    		if (Charge >= Total && this._url != param._url) {
    			clearInterval(this.prelID);
    			this.callEndPreload();
    		}
    	}
    };

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Originariamente inviato da negatyve
    codice:
    cmpPreload.prototype.preload = function(param)
    {
    	this._parent[this.mc].createEmptyMovieClip("jpgc", 1);
    	this._parent[this.mc].jpgc.loadMovie(this.file);
    	this.prelID = setInterval(this, "prevpreload", 30, this._parent[this.mc].jpgc);
    };
    cmpPreload.prototype.prevpreload = function(param)
    {
    	if (this.level > -1) {
    		var Total = param.getBytesTotal();
    		var Charge = param.getBytesLoaded();
    		//debug
    		trace("-----------");
    		trace(Total);
    		trace(Charge);
    		trace("-----------");
    		// debug
    		this._parent[this.mcprogress].setByteTotal(Total);
    		this._parent[this.mcprogress].setByteParzial(Charge);
    		if (Charge >= Total && this._url != param._url) {
    			clearInterval(this.prelID);
    			this.callEndPreload();
    		}
    	}
    };
    questo per creare un ritardo... (ma buò bastare questo ritardo?
    nn esiste un metodo migliore più sicuro?

    e questo :master: ???
    this._url != param._url

  6. #6
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    >questo per creare un ritardo... (ma buò bastare questo ritardo?

    non è un ritardo, è un ciclo di controlli ogni 30 millisecondi fino a che non è verificata la condizione (come l'enterframe, ma a tempo, non a framerate)

    >nn esiste un metodo migliore più sicuro?

    va benissimo, è un ciclo, non un controllo singolo

    >e questo ??? this._url != param._url

    verifica che l'url del movieclip sia diversa da quella del preloader (vuol dire che c'è qualcosa di esterno nel movieclip)

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Originariamente inviato da negatyve
    >questo per creare un ritardo... (ma buò bastare questo ritardo?

    non è un ritardo, è un ciclo di controlli ogni 30 millisecondi fino a che non è verificata la condizione (come l'enterframe, ma a tempo, non a framerate)

    >nn esiste un metodo migliore più sicuro?

    va benissimo, è un ciclo, non un controllo singolo

    >e questo ??? this._url != param._url

    verifica che l'url del movieclip sia diversa da quella del preloader (vuol dire che c'è qualcosa di esterno nel movieclip)
    grazie 100000 negative ho risolto tutto per ora hehehhe
    :metallica :metallica

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.