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

Windows Presentation Foundation Discussion :

animation image wpf


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Juillet 2004
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juillet 2004
    Messages : 161
    Par défaut animation image wpf
    Bonjour
    je desire faire une animation qui affiche des image une aprés les autres
    au demmarage de l'application j'ai une image image1 qui afficher puis aprés une durée image2 et afficher puis image3 aprés une autre durée, je voudrais que cette animation soit répété et la est mon probléme,en je met l'attribut RepeatBehaviour sur true et normalement je doit avoir la toutes premiere image afficher mais je ne l'ai pas
    j'ai du faire une erreur qq part voici le code XAML
    Code xaml : 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
     
    <Storyboard x:Name="animLogo" Completed="animLogo_Completed" RepeatBehavior="forever" >
                        <DoubleAnimation Storyboard.TargetName="image1"
                                         Storyboard.TargetProperty="opacity"
                                         BeginTime="0:0:5"
                                         From="1" To="0" Duration="0:0:1" />
                        <DoubleAnimation Storyboard.TargetName="image2"
                                         Storyboard.TargetProperty="opacity"
                                         BeginTime="0:0:5.25"
                                         From="0" To="1" Duration="0:0:1" />
                        <DoubleAnimation Storyboard.TargetName="image3"
                                         Storyboard.TargetProperty="opacity"
                                         BeginTime="0:0:10.50"
                                         From="0" To="1" Duration="0:0:1" />                    
     
     
                    </Storyboard>
    je ne sais pas aussi si ces la methode la plus optimal

    merci
    salutations

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    Salut,

    Ça ressemble à un gif animé. Si un gif animé te suffit, alors le plus simple est de faire ce gif animé tout simplement (il y a des outils sur internet pour ça) et de l'utiliser dans ton application WPF avec cette méthode par exemple :
    http://tomlev.wordpress.com/2011/03/...ge-gif-animee/

    Sinon pour ton code, ta première image apparait au bout de 5 secondes (BeginTime="0:0:5") et dure 1 seconde. et la deuxième démarre 25 centièmes de seconde plus tard. Du coup la première est vite remplacer et c'est peut-être pour ça que tu ne vois pas la première image

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Juillet 2004
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juillet 2004
    Messages : 161
    Par défaut
    Bonjour et merci
    je vais voir le truc sur les gif
    sinon pour l’animation j'ai jouer sur l'opacité,au bout de 5 sec image1 commence a devenir transparente et image2 commence a apparaitre aprés 0.25 sec, idem pour image3 c'est 0.25 sec après que image2 commence a devenir transparente puis la je doit avoir un raz de l'animation,image1 doit s'afficher encore et ainsi de suite
    le problème c'est que je n'arrive pas a réafficher image1 pour rejouer l'animation j'ai image2 au lieu image1 puis image3 puis image2........etc
    voici le XAML de canvas:
    Code xaml : 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
     
    <Canvas x:Name="LayoutRoot" Margin="127,12,66,13">
     
                <Image   Name="image1" Stretch="Fill" Width="207" Source="AR-EQUITY-press-36x25-Rocher.jpg" Height="275" />   
                <Image   Name="image2" Stretch="Fill" Width="207" Source="FR-EQUITY-press-36x25-Foot.jpg" Opacity="0" Height="275" />
                <Image Name="image3" Stretch="Fill" Width="207" Source="AR-EQUITY-press-36x25-Famille.jpg" Opacity="0" Height="275" />
                <Canvas.Resources>
                <Storyboard x:Name="animLogo" Completed="animLogo_Completed" RepeatBehavior="forever" >
                        <DoubleAnimation Storyboard.TargetName="image1"
                                         Storyboard.TargetProperty="opacity"
                                         BeginTime="0:0:5"
                                         From="1" To="0" Duration="0:0:1" />
                        <DoubleAnimation Storyboard.TargetName="image2"
                                         Storyboard.TargetProperty="opacity"
                                         BeginTime="0:0:5.25"
                                         From="0" To="1" Duration="0:0:1" />
                        <DoubleAnimation Storyboard.TargetName="image3"
                                         Storyboard.TargetProperty="opacity"
                                         BeginTime="0:0:10.50"
                                         From="0" To="1" Duration="0:0:1" />                    
     
     
                    </Storyboard>
            </Canvas.Resources>
        </Canvas>
    merci encore

  4. #4
    Membre émérite Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Par défaut
    Coucou,

    Essaye ce code:
    Code XML : 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
    <Canvas x:Name="LayoutRoot" Margin="127,12,66,13">
        <Image Name="image1" Stretch="Fill" Width="207" 
               Source="AR-EQUITY-press-36x25-Rocher.jpg" Height="275" />
        <Image Name="image2" Stretch="Fill" Width="207" 
               Source="FR-EQUITY-press-36x25-Foot.jpg" Opacity="0" Height="275" />
        <Image Name="image3" Stretch="Fill" Width="207" 
               Source="AR-EQUITY-press-36x25-Famille.jpg" Opacity="0"
                Height="275" />
        <Canvas.Resources>
            <Storyboard x:Name="animLogo" Completed="animLogo_Completed" RepeatBehavior="forever">
                <DoubleAnimation Storyboard.TargetName="image1" 
                                 Storyboard.TargetProperty="opacity" BeginTime="0:0:0"
                        From="1" To="1" Duration="0:0:5" />
                <DoubleAnimation Storyboard.TargetName="image1" 
                                 Storyboard.TargetProperty="opacity" BeginTime="0:0:5"
                        From="1" To="0" Duration="0:0:1" />
                <DoubleAnimation Storyboard.TargetName="image2" 
                                 Storyboard.TargetProperty="opacity" BeginTime="0:0:5.25"
                        From="0" To="1" Duration="0:0:1" />
                <DoubleAnimation Storyboard.TargetName="image3" 
                                 Storyboard.TargetProperty="opacity"
                        BeginTime="0:0:10.50" From="0" To="1" Duration="0:0:1" />
            </Storyboard>
        </Canvas.Resources>
    </Canvas>

    Cela remet bien l'opacité de ton image1 à 1 au début de l'anim (sinon elle restait à 0 jusque l'animation commence réellement (à 5 secondes).

    Bon courage,

  5. #5
    Membre confirmé
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Juillet 2004
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juillet 2004
    Messages : 161
    Par défaut
    sa ne marche pas
    je n'ai rien sur l’écran avec se code,il semblerais que le problème et le fait que image1 et utilisé deux fois!!
    jamais vu se cas!

  6. #6
    Membre émérite Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Par défaut
    mmm, et en remplaçant la première DoubleAnim par celle-ci ? :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <DoubleAnimationUsingKeyFrames Storyboard.TargetName="image1" 
    Storyboard.TargetProperty="opacity" >
            <LinearDoubleKeyFrame KeyTime="0:0:0" Value="1"/>
            <LinearDoubleKeyFrame KeyTime="0:0:5" Value="1" />
            <LinearDoubleKeyFrame KeyTime="0:0:6" Value="0" />
        </DoubleAnimationUsingKeyFrames>

    EDIT: je viens de mettre à jour ce code !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Animer Image Gif
    Par Gazoute dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 03/05/2010, 12h41
  2. Ouverture image wpf
    Par titou45 dans le forum Windows Presentation Foundation
    Réponses: 0
    Dernier message: 15/02/2010, 20h09
  3. Changer control image WPF depuis console
    Par fantk dans le forum C#
    Réponses: 2
    Dernier message: 24/05/2009, 16h06
  4. animation Storyboard WPF
    Par damii1 dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 17/04/2009, 09h12
  5. Animation Images avec agrandissement
    Par rub091 dans le forum Flash
    Réponses: 4
    Dernier message: 20/10/2007, 19h46

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