snakeeater1
Messages postés175Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention 7 mars 2008
-
21 juin 2004 à 19:32
cs_Adrien4
Messages postés65Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention28 octobre 2005
-
25 févr. 2005 à 21:27
voila mon pb j'ai mon site flash et je désir charger un swf externe avec un load movie (jusqe la tt va bien) je fais mon loadmovie, mon clip externe se charge mais vvu qu'il est plus grand qe mon site il dépasse et je ne voi po tt (il é bouffé) et je voudré savoir comment fer pour déffinir la taille tu lip externe lorsqu'on le charge...
cs_tom
Messages postés1511Date d'inscriptionsamedi 8 décembre 2001StatutModérateurDernière intervention11 juin 2009 24 juin 2004 à 12:26
Ben c'est assez simple:
Tu crée un clip vide:
_root.createEmptyMovieClip("image",1);
Ensuite tu load ton image dedans:
_root.image.loadMovie("image.jpg");
Ensuite, faut une petite fonction qui s'active une fois que l'image est chargée:
_root.image.onLoad = function(){
trace(this._width);
trace(this._heigth);
// Dans cet exemple, on divise par deux
// la hauteur et la largeur de l'image:
this._width = Math.round(this._width/2);
this._heigth = Math.round(this._heigth/2);
// ou sinon, utiliser _xscale et _yscale,
// et tu leur donne un pourcentage,
// au lieu d'un nombre de pixel...
}
Par contre, j'ai mis _root.image.onLoad, mais d'habitude, j'ajoute un fonction prototype qui fait un loader.
Je ne sais pas si le onLoad fonctionne pour un clip...
cs_tom
Messages postés1511Date d'inscriptionsamedi 8 décembre 2001StatutModérateurDernière intervention11 juin 2009 24 juin 2004 à 22:37
ce n'est qu'un exemple, et ecris à la va vite... verife la syntaxe, et pour le onload, crées plutot une fonction de preload, pour lancer ta fonction de resize.
Pourquoi tu n'essayerais pas avec _yscale et _xscale, comme ca tu n'as pas à attendre que ca soit chargé...
cs_tom
Messages postés1511Date d'inscriptionsamedi 8 décembre 2001StatutModérateurDernière intervention11 juin 2009 25 juin 2004 à 10:24
C'est le pourcentage, donc forcement, c'est un nombre entre 0 et 100 qui correspondra au % de la taille originale du clip...
Tu sais, pour savoir comment utiliser un mot ou une expression, l'aide de flash est tres bien faite: tu as l'explication et l'exemple d'utilisation pour pratiquement toutes les methodes utilisables dans flash... Ca evite de venir poser des questions qui me semble de base... C'est pour ca je suppose que superdevy a juste dit width et height: il suffit de marquer un de ses mots dans la fenetre d'action, de le surligner, et d'appuyer sur le touche F1...
En tout cas, bonne recherche, et bonne prog...
@+ Tom
snakeeater1
Messages postés175Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention 7 mars 2008 25 juin 2004 à 14:38
je sui un peu dégouté le swf que je voulait charger ne marche plu dans mon anim ( c normal et tro long a expliquez) donc g pri une solution B, je l'ai ouver ds une pop up :)
..::Snakeeater1::..
ghis_le_fou
Messages postés4Date d'inscriptiondimanche 20 juin 2004StatutMembreDernière intervention 3 juillet 2004 4 juil. 2004 à 15:37
salut,
je crois ke j'ai la solution a ton pb ...
je suis débutant et en parcourant le forum j'ai trouvé mon bonheur...
code :
//pour le chargement de l'image
MovieClip.prototype.loadFile = function(file) {
// on crée un clip à l'intérieur du clip destiné à recevoir une image
// on le nomme conteneur
conteneur = this.createEmptyMovieClip("conteneur", 100);
// à l'intérieur de conteneur on crée 2 clips vides :
// un clip destiné à charger l'image de manière invisible --> pic
pic = conteneur.createEmptyMovieClip("img", 102);
// un clip destiné à receuillir les informations de chargement --> crt
crt = conteneur.createEmptyMovieClip("control", 103);
// on attache la barre de progression : ldr
// notez la syntaxe avec accolades pour donner des valeurs à son xscale, yscale,_x,_y
ldr = conteneur.attachMovie("loader", "loader", 104, {_xscale:100, _yscale:100, _x:-83, _y:0});
// on place la taille du clip bar du loader à 0;
ldr.bar._xscale = 0;
// on charge à l'intérieur de pic l'image et/ou le swf
pic.loadMovie(file);
// on initialise la variable cnt à 0, elle sera à 1 lorsque le chargement sera terminé
//pic.cnt = 0;
// le clip crt se charge maintenant d'observer le chargement
crt.onEnterFrame = function() {
// on rend le clip qui recoit l'image en premier invisible
pic._visible = false;
// on crée une variable transfert qui évalue en permanence les bytes chargés
// et le convertit en %
transfert = Math.round(pic.getBytesLoaded()*100/pic.getBytesTotal());
// on applique ce taux à l'echelle du clip bar
ldr.bar._xscale = transfert;
if (pic.getBytesTotal()>4) {
// si le nombre d'octets chargés = le nombre d'octets total du fichier
if (pic.getBytesLoaded() == pic.getBytesTotal()) {
// on supprime l'évènemenr onEnterFrame du clip crt
delete crt.onEnterFrame;
// on enlève le loader
removeMovieClip(ldr);
// on affiche l'image
pic._visible = true;
// on lui assigne une taille fixe
pic._width=97,
pic._height=107;
}
}
};
};
fo bien utiliser _height et _width mais à la fin ... comme ça tu forces la taille de ton movie clip qui va contenir ton anim ou ton jpeg ...
c le seul moyen que j'ai trouvé pour imiter le stretch en html