Affichage d'un label lors de la copie de fichiers [Résolu]

Signaler
Messages postés
33
Date d'inscription
lundi 19 juillet 2010
Statut
Membre
Dernière intervention
6 mars 2013
-
 Utilisateur anonyme -
Hello !
Déjà, désolé pour ce titre peu explicite. Voici mon problème : mon programme copie des fichiers d'un dossier à un autre, avec une ProgressBar (qui fonctionne) et deux labels, un indiquant le nom du fichier en cours de traitement et l'autre indiquant le numéro du fichier/le nombre total de fichiers. Cependant, lors de la copie, la ProgressBar avance, mais les textes des labels restent ceux désignés dans le concepteur de forms. Je vous montre mon code. Les labels ont la propriété "Visible" en TRUE.

Dim NombreFichiers
Dim FichierNumero
        NombreFichiers = ListeOrdinateur.SelectedItems.Count
        Avancement.Maximum = NombreFichiers
        Avancement.Value = 0 'Réinitialisation du Max
        For Each selecteditem In ListeOrdinateur.SelectedItems
            lblCopie.Text = "Copie de " & selecteditem & " en cours..." 'Label qui dit quel fichier est en cours de copie
            FichierNumero = FichierNumero + 1
            NumFichier.Text = FichierNumero & " / " & NombreFichiers 'Label qui donne le numéro du fichier traité
            Avancement.Value = Avancement.Value + 1 'Avancement dans la barre
            If My.Computer.FileSystem.FileExists(Lecteur & "\Musique" & selecteditem & ".mp3") = False Then
                My.Computer.FileSystem.CopyFile(RepMusique & "" & selecteditem & ".mp3", Lecteur & "\Musique" & selecteditem & ".mp3", False)
            End If
        Next
        lblCopie.Visible = False 'Cache les labels et la progressbar
        NumFichier.Visible = False
        Avancement.Visible = False
 
        NombreFichiers = 0 'Réinitialisation des différentes variables
        FichierNumero = 0
 
        GenererListe(ListeOrdinateur, RepMusique, "mp3") 'Regénère les listbox
        GenererListe(ListeTelephone, LecteurMusique, "mp3")


Merci d'avance

3 réponses


Salut,

As-tu essayé :
     Dim NombreFichiers
        Dim FichierNumero
        NombreFichiers = ListeOrdinateur.SelectedItems.Count
        Avancement.Maximum = NombreFichiers
        Avancement.Value = 0 'Réinitialisation du Max
        For Each selecteditem In ListeOrdinateur.SelectedItems
            Application.DoEvents()
            lblCopie.Text = "Copie de " & selecteditem & " en cours..." 'Label qui dit quel fichier est en cours de copie
            FichierNumero = FichierNumero + 1
            NumFichier.Text = FichierNumero & " / " & NombreFichiers 'Label qui donne le numéro du fichier traité
            Avancement.Value = Avancement.Value + 1 'Avancement dans la barre
            If My.Computer.FileSystem.FileExists(Lecteur & "\Musique" & selecteditem & ".mp3") = False Then

                My.Computer.FileSystem.CopyFile(RepMusique & "" & selecteditem & ".mp3", Lecteur & "\Musique" & selecteditem & ".mp3", False)

            End If
        Next
        lblCopie.Visible = False 'Cache les labels et la progressbar
        NumFichier.Visible = False
        Avancement.Visible = False

        NombreFichiers = 0 'Réinitialisation des différentes variables
        FichierNumero = 0

        GenererListe(ListeOrdinateur, RepMusique, "mp3") 'Regénère les listbox
        GenererListe(ListeTelephone, LecteurMusique, "mp3")



Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
Messages postés
33
Date d'inscription
lundi 19 juillet 2010
Statut
Membre
Dernière intervention
6 mars 2013

You are a genius !
Merci !

J'y suis pour rien du tout... c'est VB qui est comme ça!

Fout donc une croix sur "réponse acceptée" sur n'importe quel message, pour ne pas attarder les autres utilisateurs.


Cordialement


CF2i - Guadeloupe
Ingénierie Informatique