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 :

dans une zone image - changer d'image avec un effet


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Par défaut dans une zone image - changer d'image avec un effet
    Bonjour,

    J'ai un composant image dans ma page, en plus j'ai 2 boutons.
    Chaque bouton fais changer l'image (c'est simpliste, mais c'est pour apprendre).

    Le code:
    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
     
    <mx:Script>
    		<![CDATA[
    			import flash.geom.*;
    			import flash.display.*;
     
    			[Bindable] public var sourcePath:String;
     
    			private function bouttonOne():void {
    				sourcePath = "com\\img\\img001.jpg";
    			}
     
    			private function bouttonTwo():void {
    				sourcePath = "com\\img\\img002.jpg";
    			}
    		]]>
    	</mx:Script>
    <mx:Image x="10" y="68" width="338" height="222" id="imagePrinted" source="{sourcePath}"/>
    Quand j'appuie sur bouton 1 ça me met l'image img001.jpg et si bouton 2 img002.jpg.

    Ca marche fonctionnellement c'est ok.
    Mais esthétiquement c'est moche, en fait quand l'image change j'ai un "clignotement", j'imagine normal vu ma méthode, mais la je vois pas comment faire pour améliorer le truc, faire un fondu par exemple?

    Merci
    PS: si ma méthode est mauvaise, ce qui est possible, n'hésitez pas a en proposer d'autre.

  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
    Par défaut
    regarde la classe Fade ou un autre effet (Effect) y'a ce qu'il faut de ce côté la

    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 éclairé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Par défaut
    Effectivement fade irait bien! Merci!
    Mais j'essaie et je galère un peu:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    	<mx:Fade id="fadeOut" duration="1000" alphaFrom="1.0" alphaTo="0.0"/>
        <mx:Fade id="fadeIn" duration="1000" alphaFrom="0.0" alphaTo="1.0"/>
     
    	<mx:Image x="10" y="68" width="338" height="222" id="imagePrinted" source="{sourcePath}"
    		hideEffect="{fadeOut}" showEffect="{fadeIn}"/>
     
    				imagePrinted.visible = false;
    				sourcePath = "com\\img\\img001.jpg";
    				imagePrinted.visible = true;
    C'est la méthode qu'il donne dans la doc(en tout cas pour la première partie, mais j'arrive pas à l'adapter, dans l'exemple il cache et affiche la même image alors que moi je souhaite la cacher et la rafficher, cette partie doit être mauvaise (trop rapide petre):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    				imagePrinted.visible = false;
    				sourcePath = "com\\img\\img001.jpg";
    				imagePrinted.visible = true;
    Bon fais fouiller un peu, vous dirait si j'ai trouver quelque chose.

  4. #4
    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
    Par défaut
    utilises l'event EffectEvent.END (syntaxe à vérifier) pour savoir quand ton effet est terminé et agir en conséquence(chargé ta nouvelle image)

    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

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Par défaut
    J'y arrive pas
    Ça clignote toujours, j'ai même l'impression que c'est pire:
    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
    	<mx:Script>
    		<![CDATA[
    			import mx.events.EffectEvent;
    			import flash.display.GradientType;
     
    			import flash.geom.*;
    			import flash.display.*;
     
    			[Bindable] public var sourcePath:String;
     
    			private function buttonTwo():void{
    				imagePrinted.visible = false;
    				sourcePath = "com\\img\\img2.jpg";
    			}
     
    			private function buttonOne():void{
    				imagePrinted.visible = false;
    				sourcePath = "com\\img\\img1.jpg";
    			}
     
    			private function endEffect():void{
    				if(imagePrinted.visible==false)
    				{
    					trace("endEffect if");
    					imagePrinted.visible = true;
    				}
    				else
    				{
    					trace("endEffect");
    				}
    			}
    		]]>
    	</mx:Script>
     
    	<mx:Fade id="fadeOut" duration="500" alphaFrom="1.0" alphaTo="0.0"/>
        <mx:Fade id="fadeIn" duration="2000" alphaFrom="0.0" alphaTo="1.0"/>
     
    	<mx:Image x="10" y="68" width="338" height="222" id="imagePrinted" source="{sourcePath}"
    		hideEffect="{fadeOut}" showEffect="{fadeIn}" effectEnd="endEffect()"/>
     
    	<mx:Button x="356" y="147" label="Button1" click="buttonOne()"/>
    	<mx:Button x="356" y="177" label="Button2" click="buttonTwo()"/>

Discussions similaires

  1. zoomer dans une zone d'une image
    Par sanatou dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/02/2008, 17h14
  2. [CKEditor] Transfer d'url dans une popup pour changer chemin upload image
    Par Acoupa dans le forum Bibliothèques & Frameworks
    Réponses: 1
    Dernier message: 24/01/2008, 10h06
  3. Réponses: 11
    Dernier message: 08/11/2007, 19h01
  4. Réponses: 12
    Dernier message: 28/07/2006, 10h22
  5. Clic dans une zone deffini sur une image
    Par patoch76 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 30/04/2006, 12h07

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