begin process at 2012 02 16 05:24:20
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > ANIMATION D'IMAGES

ANIMATION D'IMAGES


 Information sur la source

Note :
Aucune note
Catégorie :Graphique Source .NET ( DotNet ) Classé sous :imagelist, picturebox, timer, vba excel, animation Niveau :Débutant Date de création :29/07/2008 Date de mise à jour :09/08/2008 17:25:13 Vu / téléchargé :8 264 / 728

Auteur : Le Pivert

Ecrire un message privé
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Voici 2 méthodes d'animation d'images avec des imagelist que vous pouvez inclure dans vos applications.Vous pouvez mettre aussi une animation dans vos boutons.

Source

  • Public Class Form1
  • 'sans pictureBox
  • Private m_Index As Integer
  • Private m_NumImages As Integer
  • 'avec pictureBox et bouton
  • Private m_ControlCount As Int16 = 0
  • Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  • 'Avec pictureBox
  • tmrImage.Enabled = True
  • tmrImage.Start()
  • 'Avec bouton
  • tmrbouton.Enabled = True
  • tmrbouton.Start()
  • 'Sans pictureBox
  • m_NumImages = imgList.Images.Count
  • m_Index = -1
  • End Sub
  • ' 1ère Méthode avec une pictureBox
  • Private Sub tmrImage_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrImage.Tick
  • ' Mettre l'image dans la PictureBox.
  • PictureBox1.Image = imgList.Images(m_ControlCount)
  • 'On fait défiler les images
  • m_ControlCount = (m_ControlCount + 1) Mod imgList.Images.Count
  • End Sub
  • Private Sub btnstop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnstop.Click
  • If tmrImage.Enabled = True Then 'Intervalle 100
  • btnstop.Text = "&Start"
  • tmrImage.Stop()
  • Else
  • btnstop.Text = "&Stop"
  • tmrImage.Start()
  • End If
  • End Sub
  • ' 2ème Méthode sans pictureBox
  • Private Sub tmrAnimation_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrAnimation.Tick
  • m_Index = (m_Index + 1) Mod m_NumImages
  • Dim gr As Graphics = Me.CreateGraphics()
  • gr.DrawImage(imgList.Images(m_Index), 10, 10) 'positionnement de l'image sur la form
  • End Sub
  • Private Sub btnarret_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnarret.Click
  • If tmrAnimation.Enabled = True Then 'Intervalle 150
  • btnarret.Text = "&Start"
  • tmrAnimation.Stop()
  • Else
  • btnarret.Text = "&Stop"
  • tmrAnimation.Start()
  • End If
  • End Sub
  • ' 3ème Méthode dans un bouton
  • Private Sub btntest_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btntest.Click
  • If tmrbouton.Enabled = True Then 'Intervalle 50
  • btntest.Text = "&Start"
  • tmrbouton.Stop()
  • Else
  • btntest.Text = "&Stop"
  • tmrbouton.Start()
  • MsgBox(" C'est super, ça marche!!!")
  • End If
  • End Sub
  • Private Sub tmrbouton_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrbouton.Tick
  • ' Mettre l'image dans le bouton
  • btntest.Image = ImageList1.Images(m_ControlCount)
  • 'On fait défiler les images
  • m_ControlCount = (m_ControlCount + 1) Mod imgList.Images.Count
  • End Sub
  • End Class
Public Class Form1
    'sans pictureBox
    Private m_Index As Integer
    Private m_NumImages As Integer
    'avec pictureBox et bouton
    Private m_ControlCount As Int16 = 0
   
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Avec pictureBox 
        tmrImage.Enabled = True
        tmrImage.Start()
        'Avec  bouton
        tmrbouton.Enabled = True
        tmrbouton.Start()
        'Sans pictureBox
        m_NumImages = imgList.Images.Count
        m_Index = -1
    End Sub
    ' 1ère Méthode avec une pictureBox
    Private Sub tmrImage_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrImage.Tick
        ' Mettre l'image dans la PictureBox.
        PictureBox1.Image = imgList.Images(m_ControlCount)
        'On fait défiler les images 
        m_ControlCount = (m_ControlCount + 1) Mod imgList.Images.Count

    End Sub

   Private Sub btnstop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnstop.Click
        If tmrImage.Enabled = True Then 'Intervalle 100
            btnstop.Text = "&Start"
            tmrImage.Stop()
        Else
            btnstop.Text = "&Stop"
            tmrImage.Start()
        End If

    End Sub
    ' 2ème Méthode sans pictureBox
    Private Sub tmrAnimation_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrAnimation.Tick
        m_Index = (m_Index + 1) Mod m_NumImages
        Dim gr As Graphics = Me.CreateGraphics()
        gr.DrawImage(imgList.Images(m_Index), 10, 10) 'positionnement de l'image sur la form
    End Sub

    Private Sub btnarret_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnarret.Click
        If tmrAnimation.Enabled = True Then 'Intervalle 150
            btnarret.Text = "&Start"
            tmrAnimation.Stop()
        Else
            btnarret.Text = "&Stop"
            tmrAnimation.Start()
        End If
    End Sub
    ' 3ème Méthode dans un bouton
    Private Sub btntest_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btntest.Click
        If tmrbouton.Enabled = True Then 'Intervalle 50
            btntest.Text = "&Start"
            tmrbouton.Stop()
        Else
            btntest.Text = "&Stop"
            tmrbouton.Start()
            MsgBox(" C'est super, ça marche!!!")
        End If
    End Sub

    Private Sub tmrbouton_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrbouton.Tick
        ' Mettre l'image dans le bouton
        btntest.Image = ImageList1.Images(m_ControlCount)
        'On fait défiler les images 
        m_ControlCount = (m_ControlCount + 1) Mod imgList.Images.Count
    End Sub
   
End Class


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

30 juillet 2008 11:07:59 :
Rectification du code suite au conseil de NHENRY.Merci
04 août 2008 18:15:39 :
Ajout du code en VBA Excel
09 août 2008 14:40:00 :
Ajout d'une animation d'image dans un bouton.
09 août 2008 17:25:14 :
Ajout d'une 2ème imaglist pour mettre l'image dans le bouton à la bonne dimension.

 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) CREER UN GIF ANIMÉ
Source avec Zip Source .NET (Dotnet) EXPORTER LES IMAGES DE WORD ET D' EXCEL
Source avec Zip Source avec une capture COLLECTION ID
Source avec Zip PROTECTION VBAPROJECT
Source avec Zip PASSWORD CLASSEUR EXCEL

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) VB10 - CRÉER VOS PROPRES CALQUES SUR UNE IMAGE par Duke49
Source avec Zip Source avec une capture Source .NET (Dotnet) CREER UN GIF ANIMÉ par Le Pivert
Source avec une capture GRAPH PHP COURBE DE CHARGE par s.defaye
Source avec Zip Source avec une capture BOULE DE CRISTAL par BLUEBIBUBBLE
VB6 - DÉPLACEMENT D'UN CONTRÔLE SUR UN SEGMENT DE DROITE DÉL... par ucfoutu

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture JEU DU SERPENT/TRON par dada9109
Source avec Zip Source avec une capture PLANCHE CONTACT SOUS WORD par Le Pivert
Source avec Zip Source avec une capture Source .NET (Dotnet) JEU DE SERPENT/TRON AVEC PICTUREBOX par raffika
Source avec Zip Source avec une capture Source .NET (Dotnet) JEU DE SERPENT AVEC PICTUREBOX par raffika
Source avec Zip Source avec une capture Source .NET (Dotnet) JEU DU CISEAUX par Le Pivert

Commentaires et avis

Commentaire de NHenry le 30/07/2008 09:12:30 administrateur CS

Pour cette partie de ton code, il y a mieux (enfin je pense) :
#  Private Sub tmrImage_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrImage.Tick
# ' Mettre l'image dans la PictureBox.
# PictureBox1.Image = imgList.Images(m_ControlCount)
#
# 'Augmentez le compte (s)
# m_ControlCount += 1
#
# 'Si l'image finale a été montrée
# 'On recommence
# If m_ControlCount = 19 Then m_ControlCount = 0 '19 Nombre d'images dans l'imagelist
# End Sub


#  Private Sub tmrImage_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrImage.Tick
# ' Mettre l'image dans la PictureBox.
# PictureBox1.Image = imgList.Images(m_ControlCount)
#
# 'Augmentez le compte avec RAZ auto (et en fonction du nombre d'image réel)
# m_ControlCount = (m_ControlCount+1) mod imgList.Images.count

# End Sub

Commentaire de Le Pivert le 30/07/2008 10:59:36

Tout à fait exact et en plus de raccourcir le code, cela évite tout bug dû aux erreurs de saisie du nombre d'images.
Merci NHENRY
@+

Commentaire de PCPT le 30/07/2008 14:50:12 administrateur CS

salut,
le code de btnstop_Click et btnarret_Click sont quasiment les mêmes.
il n'y a pas quelque chose à faire avec les handles pour ne pas avoir cette redondance?
(pour 'simuler' un groupe de contrôle quoi)

très léger comme code quand même. transformer çà en UC peut-être?
++ ;)

Commentaire de NHenry le 30/07/2008 15:06:35 administrateur CS

Un truc genre
Private Sub btnstop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnstop.Click,btnarret.Click
   if sender if btnstop then
      If tmrImage.Enabled = True Then
         btnstop.Text = "&Start"
         tmrImage.Stop()
      Else
         btnstop.Text = "&Stop"
         tmrImage.Start()
      End If
   else sender is btnarret then
      If tmrAnimation.Enabled = True Then
         btnarret.Text = "&Start"
         tmrAnimation.Stop()
      Else
         btnarret.Text = "&Stop"
         tmrAnimation.Start()
      End If
   End if
End Sub

Enfin il y a peut être plus court, mais cela évite déjà d'avoir 2 subs.

Commentaire de PCPT le 30/07/2008 15:39:44 administrateur CS

j'aurais peut-être plus vu quelque chose de ce genre :

    Private Sub btnarret_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnarret.Click, btnstop.Click
        Dim oTimer As Timer = IIf(sender.name.ToString = "btnarret", tmrAnimation, tmrImage)
        oTimer.Enabled = Not oTimer.Enabled
        sender.Text = IIf(oTimer.Enabled, "&Stop", "&Start")
        oTimer = Nothing
    End Sub


après y'a pas non plus besoin de 2 timers, ni même réellement de le désactiver en fait...

enfin bon, tel quel au moins on voit bien les 2 modes de fonctionnement
je maintiens que çà me semble très léger... :(

ps : normal que GR ne soit pas détruit/libéré?

Commentaire de Le Pivert le 30/07/2008 15:50:03

Le but de cette source est bien sur de voir les deux modes de fonctionnement. Il est bien évident qu'en l'état elle ne sera jamais utilisée.
Merci à vous deux de votre intérêt pour une si petite source.
@+

Commentaire de Le Pivert le 09/08/2008 14:43:07

Comme la source me paraissait légère j'ai ajouté une animation dans un bouton en me servant des données existantes, rien de bien sorcier, mais qui peut intéresser certaines personnes.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

ImageList et PictureBox [ par kpfeu ] Bonjour, j'ai vraiement bessoin de votre aide.J'ai un controle ImageList dans lequel sont définit 4 images. Et j'aimerais afficher l'image de mon Imag graphics et timer [ par yffick ] Bonjour,j'ai besoin d'aide en vb.netDans un evenement tick d'un timer je cree un graphics g et je voudrais dessiner un rectangle r qui se reaffichent ImageList et ListView [ par RL ] Bonjour,Mon Pb est le suivant:Dans un formulaire d'essai j'ai placé un ctrl ListView, un ctrl ImageList, un ctrl PictureBox et j'écécute le code suiva ImageList et picturebox! [ par Seth77 ] Slu comment faire pour afficher dans une picturebox une image qui est dans une imagelist ? merci d avance !Herve Prb fluidité d'une animation dans une picturebox [ par daddycool76 ] Bonjour, J'ai dans une picturebox des objets (circle, line et text) que l'utilisateur peut déplacer lorsqu'il clic dessus.Le code est un peu bourrin : Comment simplifier mon code? [ par athlon64 ] Bonjour,Je suis débutant en vb6 et je me retrouve bloqué dans l'avancement de mon projet parce que je ne sais pas comment simplifier mon code.je vais Besoin d'aide: pictureBox versus VBA + imageList [ par Menhir ] SalutQuelqu'un peut m'aider??? Je programme avec Access 2000 en VBA et je désire faire afficher dans mon formulaire des images à partir d'un imageList animation, timer [ par wahidov2000 ] bonjour ,je veux juste savoir comment faire pour qu'un timer soit toujours en execution (pas d'interuption)car j'utilise des bases de donnée de grande PictureBox ComboBox et ImageList [ par djdjo59 ] Bonjour, voilà j'ai un ComboBox avec une liste de chiens, et une pciturebox qui donne l'image du chien lorsque je clique sur une race de chien de ma


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,763 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales