Bonjour,
J’ai besoin d'afficher la fenêtre d'attente avec un progressbar pendant le calcul de la taille des fichiers. Mais si je l'affiche juste comme ça elle se fige. Donc j'ai créé le thread qui doit seulement afficher cette fenêtre et changer la valeur de son progressbar. Mais ça se fige quand même. S'il vous plait, est-ce que quelqu'un peut me dire qu'est-ce que ne va pas.
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
33
34
35
36
37
38
39
40 TCalculTaille = class(TThread) private tform: TFormEnCours; protected public procedure Execute; override; Constructor Create(form: TFormEnCours); end; Constructor TCalculTaille.Create(form: TFormEnCours); begin tform := form; tform.spSkinGauge1.Value := 0; tform.Show; FreeOnTerminate := true; inherited Create(false); end; procedure TCalculTaille.Execute; var iprogress: integer; begin iprogress := 0; while not terminated do begin if iprogress < 100 then iprogress := iprogress + 1 else iprogress := 0; tform.Gauge1.Value := iprogress; sleep(50); end; tform.Close; end; //---------dans le module principale th: TCalculTaille; FormEnCours := TFormEnCours.Create(Self); th := TCalculTaille.Create(FormEnCours);
Partager