IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flex Discussion :

Lancer des effets avec Action Script, sans changer d'état


Sujet :

Flex

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    554
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 554
    Points : 181
    Points
    181
    Par défaut Lancer des effets avec Action Script, sans changer d'état
    Bonjour à tous,

    J'aimerai faire une galerie photo, la partie que je suis en train de faire concerne le chargement des images miniatures.
    Pour cela j'ai une HBox pour laquelle j'appelle addElement pour chacune de mes images créées dans le script. J'utilise l'objet Image pour charger dynamiquement mes images miniatures.

    Donc pour le moment le code que je vous ai joint affiche bien mes images, mais il n'y a pas d'effets lancés. J'aimerai que quand le chargement de l'image est fini, elles apparaissent en fondu.

    Le problème est que je n'ai pas trouvé sur internet comment lancé un effet sur un objet Image ou quelconque d'ailleurs.

    Voici mon code, je précise que j'utilise Flex 4:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
     
    <fx:Script>
    		<![CDATA[
    			import mx.controls.Image;
    			import mx.rpc.events.FaultEvent;
    			import mx.rpc.events.ResultEvent;
     
    			import spark.effects.animation.Animation;
     
    			public function init():void{
    				XmlFile.send();
    			}
     
    			public function xmlFault(evt:FaultEvent):void{
    				trace(evt.message);
    			}
     
    			public function xmlResult(evt:ResultEvent):void{
    				var myCat:String = new String("Bagues");
     
    				// Récupération de la liste des images
    				var xmlList:XMLList = XML(evt.result).children();
     
    				// Recherche de la catégorie
    				for(var i:int = 0;i<xmlList.length();i++)
    				{
    					if(xmlList[i].name == myCat) // Si c'est la catégorie cherchée
    					{
    						for(var j:int = 0;j<xmlList[i].photos.photo.length();j++) // On liste toutes les photos de cette catégorie
    						{
    							// On crée une nouvelle image
    							var myImg:Image = new Image();
    							myImg.source = "img/" + myCat + "/small/" + xmlList[i].photos.photo[j].name + ".jpg";
    							myImg.alpha = 0;
    							myImg.addEventListener(Event.COMPLETE,showTileImg);
     
    							// On l'ajoute à la liste
    							myTileList.addElement(myImg);
    						}
    					}
    				}
    			}
     
    			public function showTileImg(evt:Event):void
    			{
    				Image(evt.target).alpha = 100;
    			}
    		]]>
    	</fx:Script>
     
    	<fx:Declarations>
    		<mx:HTTPService url="img.xml" id="XmlFile" resultFormat="xml" result="xmlResult(event);" fault="xmlFault(event)"/>
    	</fx:Declarations>
     
    	<s:VGroup x="0" y="0" width="100%" height="100%">
    		<s:DataGroup width="100%" height="500"/>
    		<s:Scroller width="100%" height="200">
    			<s:HGroup x="127" y="50" width="100%" height="200" id="myTileList">
    			</s:HGroup>
    		</s:Scroller>
    	</s:VGroup>
    Merci d'avance pour votre aide

  2. #2
    Membre expert
    Avatar de Jim_Nastiq
    Homme Profil pro
    Architecte, Expert Flex
    Inscrit en
    Avril 2006
    Messages
    2 335
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte, Expert Flex
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 335
    Points : 3 189
    Points
    3 189
    Par défaut
    Salut,

    voici un exemple simpliste. Tu charges ton image en la laissant invisible(visible = false), tu prépares ton effet:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <mx:Fade id="fadeIn" duration="1000" alphaFrom="0.0" alphaTo="1.0"/>
    tu rajoutes cette effet à la propriété showEffect de ton image, et tu passes ton image visible une fois chargée intégralement, et le tour est joué.

    Pensez vraiment à effectuer une recherche avant de poster, ici et sur un moteur de recherche! c'est la moindre des choses
    Pensez au tag

    Mon Blog sur la techno Flex
    Ma page sur Developpez.com

    Jim_Nastiq

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    554
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 554
    Points : 181
    Points
    181
    Par défaut
    Quand je tente de changer la valeur de showEffect, il me dit que c'est une propriété indéfinie.

    Je le fait de cette façon après la création de mon objet Image:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    myImg.showEffect = fadeIn;

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 78
    Points : 94
    Points
    94
    Par défaut
    Cheet Haze a fait un tuto assez complet la dessus il y a une ou deux semaines. Son site est mort mais regarde sur son channel http://tv.adobe.com/show/codedependent/ il y aborde aussi le pb gap de box et comment éviter qu'il déforment l'animation.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    554
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 554
    Points : 181
    Points
    181
    Par défaut
    Effectivement il y a des vidéos très intéressantes sur son channel, merci pour le lien je vais regarder tout ça

Discussions similaires

  1. Lancer des videos avec VLC
    Par djazz dans le forum VB.NET
    Réponses: 2
    Dernier message: 14/03/2013, 10h42
  2. Créer des effets avec AJAX
    Par captainflex dans le forum Ruby on Rails
    Réponses: 1
    Dernier message: 30/03/2009, 15h34
  3. connaitre la durée d'une animation avec action script
    Par edzodzinam dans le forum Flash
    Réponses: 4
    Dernier message: 15/07/2008, 11h07
  4. comment executer script sans changer de page
    Par calitom dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 29/06/2007, 11h35
  5. gestion de couleur de texte avec Action Script
    Par smh_master dans le forum Flash
    Réponses: 18
    Dernier message: 16/11/2006, 15h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo