Bonjour,
je suis entrain des créer un programme pour Rechercher un mots dans tous les fichiers dans le répertoire.
mon problème c'est comment calculer tous les fichiers avec un progressbar dans backgroundWorker1.
mon code :
pouvez-vous me dire comment puis je faire pour calculer la recherche d'un mot avec un progressbar? merci d'avance
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 Private Sub BackgroundWorker1_DoWork(sender As Object, e As DoWorkEventArgs) ScanDirectory(e.Argument, TextBox2.Text) If backgroundWorker1.CancellationPending Then e.Cancel = True Exit Sub End If backgroundWorker1.ReportProgress(100) End Sub Private Sub BackgroundWorker1_ProgressChanged(sender As Object, e As ProgressChangedEventArgs) If Not backgroundWorker1.CancellationPending Then ProgressBar1.Value = e.ProgressPercentage End If End Sub Public Sub ScanDirectory(ByVal dossier As String, ByVal Pattern As String) For Each files As String In Directory.GetFiles(dossier) If backgroundWorker1.CancellationPending Then Return counter += 1 Label2.Invoke(Sub() Label2.Text = files) ProgressBar1.Invoke(Sub() ProgressBar1.Maximum = files.Length) Using reader As New StreamReader(files) Dim data As String = reader.ReadToEnd If data IsNot Nothing AndAlso data.Contains(Pattern) Then FileFound.Add(files) End Using backgroundWorker1.ReportProgress(counter / files.Length * 100) Next For Each filename As String In Directory.GetDirectories(dossier) counter = 0 ScanDirectory(filename, searchPattern) Next End Sub
Partager