Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS1/AS2
AS1/AS2 Questions relatives à la programmation ActionScript 1 et 2 (Cours AS2)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/06/2007, 11h37   #1
Membre du Club
 
Inscription : juin 2007
Messages : 336
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 336
Points : 48
Points : 48
Par défaut Livre "120 scripts pour flash 8"

Bonjour a tous,
Venant qu'acquerir cet ouvrage, je suis assez deçu :-(
Les scripts proposés sont tres interessants mais par contre pas pour les debutants :s
Prenons un exemple, je souhaite realiser un prechargement.
Voila ce qu"il faut faire selon le livre :

L'image clé 1 ne contient qu'un texte dynamique dont le nom de variable est "affichagechargement", ainsi qu'une occurence intitulé "jaugedechargement". Cette derniere correpondant a un simple rectangle dans le sens de la largeur, qui va s'etirer peu a peu au moment du chargement. Dessinez le a sa taille finale, celle qu"il aura lorsque le chargement sera terminé et que votre barre indiquera la fin de ce preload.
Puis voici le script

Code :
1
2
3
4
5
6
7
8
9
10
11
12
stop();
var poidsAnimation = _root.getBytesTotal();
_root.onEnterFrame = function() {
	chargeEnCours = _root.getBytesLoaded();
	partChargement = Math.ceil((chargeEnCours/poidsAnimation)*100);
	affichageChargement = partChargement+" %";
	jaujeDeChargement._xscale = partChargement;
	if (partChargement == 100) {
		delete _root.onEnterFrame;
		gotoAndStop(2);
	}
};
Mais pour moi c'est du chinbois tous ca et ce n'ai que le premeire exemple.
D'apres ce que j'ai compris faut placer ce script sur la prmeire image clef , c'est ce que j'ai fais mais sa ne marche pas oO
yuyu599 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2007, 10h24   #2
Membre Expert
 
Avatar de dom_dev
 
Inscription : février 2006
Messages : 2 067
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 2 067
Points : 2 114
Points : 2 114
bonjour,

dans flash en dehors de l'actionscript l y a quelques notions à acquérir sur le fonctionnement de l'éditeur. Mais nous ne savons pas ou tu en es dans ce domaine donc pas évident de t'expliquer.
La plupart du temps les instructions du script appellent des méthodes et des propriétés agissant sur les clips de ton animation. Pour cela, il faut donc nommer ceux ci en préalable à toutes instructions.
Par exemple, "jaujeDeChargement._xscale" va définir le propriété _xscale c'est à dire "l'étiremment" dans le sens des x (en pourcentage) du clip "jaujeDeChargement". Si tu cliques sur le rectangle qui va servir de jauge et que tu regardes dans le panneau des propriétés tu dois voir un champs texte vers le bas à gauche qui est le nom d'occurence. S'il y a un nom ce sera donc "jaujeDeChargement" sinon c'est à toi de le mettre attention respect l'ortographe avec exactitude (y compris majuscules et minuscules).
Bon, revenons au code :
ça c'est juste pour stopper la "tête de lecture" sur la première image clé, ça n'a de sens qui si ton animation a plusieurs images dans la timeline s'il n'y en a qu'une ben ça ne gêne pas non plus)
Code :
var poidsAnimation = _root.getBytesTotal();
poidsAnimation est simplement une variable, _root correspond à l'animation elle même, c'est le clip principale qui contient tous les autres. La méthode va renvoyer le poids total de l'animation.
De façon comparable "chargeEnCours = _root.getBytesLoaded();
" cette instruction affecte à chargeEnCours le nombre d'octets chargés à l'instant ou cette méthode est appelée et c'est pour cela qu'elle est applelé régulièrement grâce à la méthode "_root.onEnterFrame = function() {
" c'est une méthode très importante dans flash c'est une méthode qui s"execute à la cadence de l'animation. Si ton animation à 24 images/par seconde, la methode onEnterFrame s'excutera 24 fois par seconde.
Code :
1
2
3
partChargement = Math.ceil((chargeEnCours/poidsAnimation)*100);
affichageChargement = partChargement+" %";
jaujeDeChargement._xscale = partChargement;
ça c'est juste les calculs pour donner au clip jauge la longueur des bits chargés
Code :
1
2
3
4
if (partChargement == 100) {
delete _root.onEnterFrame;
gotoAndStop(2);
}
à chaque fois qu'on met la jauge à jour on vérifie qu'on à pas atteind 100% et si c'est le cas on arrête le onEnterFrame et on passe à l'image clé suivante ou il y a le reste de l'animation.

TRES IMPORTANT

Si tu réalises ce script dans une petite animation sur ta propre machine tu ne verras rien du tout car le chargement du site sera casiment instantanné, ce script fonctionne sur un gros site, en ligne sur le web.

Voilà j'espère que ces petites explications commencent à éclairer ta lanterne et te donne envie de poursuivre car flash est un logiciel passionnant.

cordialement,
__________________
Si la ou les réponses obtenues vous ont donné satisfaction n'oublier pas ->
Et ne rajoutez pas de nouvelles questions éternellement dans le même post surtout si vous en n'êtes pas l'auteur
MERCI
dom_dev est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/06/2007, 17h46   #3
Membre du Club
 
Inscription : juin 2007
Messages : 336
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 336
Points : 48
Points : 48
ok merci j'y vois plus clair, sinon je peux quand meme visualiser le preload sur ma machine soius flash 8, je fais ctrl + entrer, et dans la nouvelle fenetre, je vais dans view -> download setting ( je regle en fonction de mon fichier) puis simul download et sa marche nikel, merci des precisions
yuyu599 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h18.


 
 
 
 
Partenaires

Hébergement Web