Actionscript, petit problème de redimenssionement

Statut
N'est pas ouverte pour d'autres réponses.
J'explique le topo :) Je dois charger une image de taille aléatoire dans un clip qui lui est de taille fixe (190px sur 120px). Donc que l'image soit "redimensionnée" automatiquement. Ce clip se nome : imageBig

Pour le moment j'arrive à charger le JPG, mais pas à le redimensionner. Et c'est là que je fais appel à vous :) Voici le code que j'ai déjà fait : http://gamelike.net/flash.rar

PS : si vous avez des sites clairs expliquant les différentes class d'actionscript je suis preneur :p
PS2 : première fois de ma vie que je fais de l'AS ;)
 

[L56]

Elite
Hello,

J'ai pas relooké ton code, mais à priori comme, ça je dirais que tu lances ta fonction de redimenssionement avant que l'image soit totalement chargée.

Tu dois traquer le chargement de ton image, et lancer le redimensionnement avec _width et _height lorsque l'image est totalement chargée. Il en vas de même pour toute une série de propriétés des clip de flash.

Si c'est pas ça, tu vx pas me faire un zip stp, paske j'ai pas un "dérareur" sous la main là...

Je ne comprends pas trop ce que tu cherches comme explications sur les classes?
Toute la base est expliquée dans l'aide de Flash.
Tu veux des explication sur les classes natives de Flash ou tu vx savoir comment on fait ses propres classes?


Si tu cherche de l'aide sur la conception de classes en AS2, je te conseil vivement le bouquin de Colin Moock : "Le meilleur d'Action Script 2.0"

[L56]
 
1er
OP
P

PunkDeLuxe

condom
Pour les classes, les classes natives ... je sais c'est con mais la dernière fois que j'ai utilisé l'aide flash pas moyen de trouver une seule aide :/

Voici le ZIP ;) http://gamelike.net/flash.zip

J'irais voir le bouquin demain =)
 

[L56]

Elite
Je viens de regarder ton code, mais je ne vois pas ou se trouve ta fonction de resize??? :beuh:
 
1er
OP
P

PunkDeLuxe

condom
[L56] a dit:
Je viens de regarder ton code, mais je ne vois pas ou se trouve ta fonction de resize??? :beuh:
Enfait je ne trouve pas les fonctions etc pour créer cette fonction qui pour moi aurait été mise dans la fonction img1. Si quelqu'un sait ce que je dois utiliser exactement :D je prend (ou alors si il sait vite me faire la petite fonction et la commenter histoire que j'apprenne qqchose :p
 

[L56]

Elite
Tu es sur quel version de Flash?
 
1er
OP
P

PunkDeLuxe

condom
Sur ce flash normalement en AS2.0 mais il n'y a aucuns problèmes pour avoir un AS3.0
 

[L56]

Elite
Ok, mais on ne va pas faire de l'AS2 ni de l'AS3 tout de suite si tu débutes, ce qui m'interessais c'était de savoir si tu étais sur un version supérieure au 6 pour pouvoir employer le typage de variable, mais apparement c'est le cas.

Voila le genre de code que tu devrais employer :

Code:
_root.createEmptyMovieClip("conteneur_mc",_root.getNextHighestDepth()); //creation d'un clip conteneur vide

var imageBig:String="coucou.jpg";

function img1(_imageBig) {
	var enCharge:Number; 
	var pTotal:Number; 
	
	_root.conteneur_mc.loadMovie(_imageBig); //on lance le chargement de l'image
	
	//on traque en boucle (x fois par secondes en fct de ton fps) le chargement
	_root.onEnterFrame=function() {
		enCharge=conteneur_mc.getBytesLoaded(); //nombre de bytes déja chargés
		pTotal=conteneur_mc.getBytesTotal(); //poids total de l'élément à charger
		
		if(enCharge==pTotal && enCharge!=0) { // si l'image est totalement chargée, on resize 
			conteneur_mc._width=180;
			conteneur_mc._height=180;
		}	
	}
}

img1(imageBig); //lancement de la fct

Ce petit script est une base. Si tu dois charger une multitude d'image, il faut evidement un peut faire evoluer le bazard... :-9

[L56]
 
1er
OP
P

PunkDeLuxe

condom
Un gros merci :) Et je viens d'apprendre deux classes en plus grâce à toi :cool:
 

[L56]

Elite
PunkDeLuxe a dit:
Un gros merci :) Et je viens d'apprendre deux classes en plus grâce à toi :cool:
ah bon??? lesquelles? :-s
 
1er
OP
P

PunkDeLuxe

condom
[L56] a dit:
ah bon??? lesquelles? :-s
Oui, oui :
enCharge=conteneur_mc.get BytesLoaded(); //nombre de bytes déja chargés
pTotal=conteneur_mc.getBy tesTotal(); //poids total de l'élément à charger

Comme marqué au dessus, je n'ai jamais fait de AS de ma vie, et j'ai juste eut les bases de flashen cours. Maintenant un autre problème, comment que faire (car en modifiant à la barbare il m'affiche en grand l'image) pour afficher 2 autre image resizée ?
 

[L56]

Elite
oulàlà, tu as un petit problème de vocabulaire.

getBytesLoaded et getBytesTotal ne sont pas des classes, mais des "METHODES"

_width et _height sont des "PRORPIETES"

Une classe est un ensemble de mehodes et de propriétés, donc MovieClip est une Classe, tout comme Button.

Une méthode, c'est une fonction. Une propriété, c'est...ben...une propriété quoi...
Par exemple gotoAndPlay(4), c'est une méthode (tu y retrouves les parenthèses pour passer un paramètre à cette fonction integrée au MovieCLip)

Une propriété : _witdh. Ca te permet de connaître la propriété "largeur" de ton mc.

Si tu vas dans : C:\Program Files\Adobe\Adobe Flash CS3\fr\First Run\Classes , tu y trouveras toute les classes native de Flash (ON TOUCHES QU'AVEC LES YEUX!!! ;-D ). Tu verras ainsi ce qu'est une classe, enfin, pas tout à fait, car ces classe sont un peut particulères (elle ne contiennent que les signatures des methodes et propriétés, car les codes de celles-ci sont déjà compilés dans le Flash-Player), mais tu aurras une idées. Ce sont des fichier texte, donc tu peux les éditer avec notePad (mais ne les modifies surtout pas...)


Pour qu'il affiche tes autres images resizées, tu dois les passer egalement comme paramètre à la fonction.

si tu veux, montres moi ton code...
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut