Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610

    FLMX]Problema ridimensionamento filamato.swf

    Allora ecco il mio problema :
    ho un mc che carica una imagine con questo codice :

    this.slot.loadMovie("nome file.jpg");

    dopo che il file è stato caricato (un preload)

    devo adattare le dimensione della immagine al mc che la contiene
    e quindi faccio così

    this.slot._height = this.imh;
    this.slot._width = this.imw;

    this.imh e this.imw sono larghezza e altezza del mc che contiene l'immagine
    prima di eseguire loadmovie

    Ora nn capisco perchè se questo codice funziona perfettamente con la
    immagine non funzione con i filamti .swf ?


    p.s
    this = movie clip principale che contiente slot
    slot = movie clip dove andrà caricata l'immagine

  2. #2
    Utente di HTML.it L'avatar di Stormy
    Registrato dal
    Dec 2000
    Messaggi
    2,701
    com'è il preloader?

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Originariamente inviato da Stormy
    com'è il preloader?
    codice:
    	this.Total = this.slot.getBytesTotal();
    	this.Charge = this.slot.getBytesLoaded();
    	
    	if (this.Charge>=this.Total) {
    		delete this.onEnterFrame;
    		stop();
    	}
    tutto dentro l'onEenterFrame

  4. #4
    Utente di HTML.it L'avatar di Stormy
    Registrato dal
    Dec 2000
    Messaggi
    2,701
    lì prima di tutto manca un controllo sull'_url e poi non vedo il comando per ridimensionare il movie clip, nè una variabile che settata true dice a qualche altro comando di ridimensionare il movie clip

    cioè quando tu carichi su un movie clip all'inizio i bytes totali sono undefined (e risultano uguali) per cui di solito si fa un controllo sull'undefined

    ma nel tuo caso se devi caricare più immagini o swf sempre sullo stesso movie clip devi piuttosto fare un controllo sull'_url per verificare prima che l'_url sia cambiata (perchè altrimenti le percentuali totali e parziali ti risulteranno comunque uguali) e poi da lì continuare con il controllo sui bytes caricati

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Non volevo mettere tutto il codice cmq eccolo qua
    codice:
    cmpPreload.prototype.prevpreload = function(param) {
    	this.Total = param.getBytesTotal();
    	this.Charge = param.getBytesLoaded();
    	if (this.Total == -1) return;
    	
    	..,qua vengono aggiornate alcune cose grafiche ecc.
    
    	if (this.Charge>=this.Total) {
    		delete this.onEnterFrame;
    		stop();
    		this.callEndPreload();//una funzione da chiamare
    	}
    };
    il tutto sta dentro un metodo di un comp ma questo cmq non influenza il succo del discorso

    Poi dopo che l'immagine è stata carica faccio questo

    codice:
    cmpVis360.prototype.onloadimage = function() {
    	//setto le dimensioni dell'img caricata
    	this.slot._height = this.imh;
    	this.slot._width = this.imw;	
    
    };
    ci sono due componenti in gioco ma anche questo non influenza il succo del discorso
    Spero di essere stato più chiaro

  6. #6
    Utente di HTML.it L'avatar di Stormy
    Registrato dal
    Dec 2000
    Messaggi
    2,701
    sì ma secondo me è questo il comando che non va

    if (this.Total == -1) return;

    ..,qua vengono aggiornate alcune cose grafiche ecc.

    if (this.Charge>=this.Total)

    perchè se il movie clip già ha qualcosa caricato dentro avrà dei bytes totali per cui gli risulta che i bytes totali e i bytes caricati sono uguali, tu devi far riferimento all'_url

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Originariamente inviato da Stormy
    sì ma secondo me è questo il comando che non va

    if (this.Total == -1) return;

    ..,qua vengono aggiornate alcune cose grafiche ecc.

    if (this.Charge>=this.Total)

    perchè se il movie clip già ha qualcosa caricato dentro avrà dei bytes totali per cui gli risulta che i bytes totali e i bytes caricati sono uguali, tu devi far riferimento all'_url
    ok spiegami cioè ?

  8. #8
    Utente di HTML.it L'avatar di Stormy
    Registrato dal
    Dec 2000
    Messaggi
    2,701
    if (this._url!=url) {
    if (this.Charge>=this.Total)
    .....
    url=this._url

    in modo che la variabile (meglio globale in modo da settarla anche all'inizio con l'url del filmato principale) url contenga sempre l'url aggiornata

    ma avevo riscontrato dei problemi con i movie clip nidificati riguardo all'url (a volte da undefined) fammi fare qualche prova e ti metto lo script completo se questo non dovesse funzionare

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Originariamente inviato da Stormy
    if (this._url!=url) {
    if (this.Charge>=this.Total)
    .....
    url=this._url

    in modo che la variabile (meglio globale in modo da settarla anche all'inizio con l'url del filmato principale) url contenga sempre l'url aggiornata

    ma avevo riscontrato dei problemi con i movie clip nidificati riguardo all'url (a volte da undefined) fammi fare qualche prova e ti metto lo script completo se questo non dovesse funzionare
    OK perchè non riesco a capire bene il funzionamento di questo url :master:

  10. #10
    Utente di HTML.it L'avatar di Stormy
    Registrato dal
    Dec 2000
    Messaggi
    2,701
    _url trova l'_url in cui è l'immagine, il filmato o quant'altro

    se all'inizio il filmato è in www.mypage/filmato.swf

    trace(this._url)

    ti darà

    www.mypage/filmato.swf

    se poi ci carichi dentro un'immagine che sta a questo indirizzo www.mypage/img/foto1.jpg

    ti darà

    www.mypage/img/foto1.jpg

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.