
22.09.2016, 13:20
|
Прохожий
|
|
Регистрация: 22.09.2016
Сообщения: 7
Версия Delphi: Delphi 10
Репутация: 10
|
|
Класс потока:
Код:
type TReadThread = class(TThread)
private
Filenames: TStrings;
fData: PData;
protected
procedure Execute; override;
public
ProgressEnd: Integer;
Progress: Integer;
constructor Create(AFilenames: TStrings; AData: PData);
end;
Execute:
Код:
procedure TReadThread.Execute;
var f: TextFile;
s: string;
i: integer;
sl: TItemData;
begin
for i:=0 to Filenames.Count-1 do
begin
AssignFile(f, Filenames[i]);
Reset(f);
sl:=TItemData.Create(Filenames[i]);
fData.Items.Add(sl);
ProgressEnd:=FileSize(f);
Progress:=0;
while not eof(f) do
begin
readln(f, s);
fData.Items.Last.Items.Add(s);
Progress:=Progress + Length(s);
end;
CloseFile(f);
end;
end;
|