comment initialiser propriété Tstringlist d'un thread ?
Bonjour ,
j'aurais besoin de votre avis sur ce bout de code qui recopie des valeurs de mon Form Main dans les propriétés de mon thread
si je fais
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| L1 := TStringList.Create;
try
for i := 0 to Listview1.Items.Count - 1 do
begin
L1.Add(Listview1.Items.Item[i].Caption );
end;
monThread.ListNames:=L1;
finally
L1.Free;
end;
monThread.Suspend;
monThread.Resume; |
Avec le code ci dessus le thread se lance avec un Tstringlist ListNames qui est vide , ce qui fait planter.
alors je modifie le code par ceci et ça semble marcher mais je ne suis pas sûr d'avoir pris la bonne décision
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| if assigned(L1) then freeandnil(L1);
L1 := TStringList.Create;
try
for i := 0 to Listview1.Items.Count - 1 do
begin
L1.Add(Listview1.Items.Item[i].Caption );
end;
monThread.ListNames:=L1;
finally
//L1.Free;
end;
monThread.Suspend;
monThread.Resume; |
votres avis s.v.p ?