Gif bloqué durant une opération

Signaler
Messages postés
72
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
14 janvier 2013
-
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
-
Bonsoir,

Bah voila mon soucis, c'est que lorsque je lance un scan du disque dur pour rechercher un dossier spécifique, je voudrais lancer un .gif en même temps. Le hic c'est que le .gif se bloque, ce qui est tout à fait logique, et donc je voulais mettre mon .gif dans un thread différent.... Et la encore ca ne veut pas le .gif bloque toujours, si quelqu'un peut me dire ou j'ai fait l'erreur merci.

Voici mon code dans la form :

Private Sub Button12_Click.......
              thread1.Start()
// mon code de recherche de dossier ici
       End Sub

voici le code dans la class :

Public thread1 As New Thread(AddressOf Showgif)

Sub Showgif()
        Configurateur.PictureBox19.Show()
    End Sub

5 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
ton thread lance le gif, c'est bien. mais l'animation du gif ne le concerne pas pour autant.
Il s'agit du boulot de ta Form.


ajoutes des Application.DoEvents dans ta boucle, pour donner du temps a ta form, pour qu'elle raffraichisse ton gif.
Messages postés
72
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
14 janvier 2013

Ca ne va pas, même en mettant des "DoEvents" à tout va, ça bloque.

Une autre idée peut-être ?
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
quel code utilises tu pour ton scan ?
Messages postés
72
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
14 janvier 2013

Voila la fonction que j'utilise :

Public Function recherche(ByVal dossier As String, ByVal disque As String)
        Dim Find As New clsFind
        Dim I As Integer
        Configurateur.Button12.Enabled = False
        Find.WithSubFolder = True
        Find.Path = disque
        Find.FileType = dossier
        System.Windows.Forms.Application.DoEvents()
        Find.Search()
        System.Windows.Forms.Application.DoEvents()
                If Find.NumFiles > 0 Then
          
            For I = 1 To Find.NumFiles
                System.Windows.Forms.Application.DoEvents()
                            Configurateur.ListBox1.Items.Add(Find.GetFile(I))
                        Next I
        Else
                  End If
               Find = Nothing
        Configurateur.ListBox1.Refresh()
        Configurateur.Button12.Enabled = True
    End Function
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
et ta recherche peux pas etre placé dans un autre thread, plutot que le lancement de l'animation ?