Показать сообщение отдельно
  #9  
Старый 13.05.2012, 18:44
EL190 EL190 вне форума
Новичок
 
Регистрация: 23.04.2012
Сообщения: 50
Репутация: 159
По умолчанию

процедура создания вызывается до этого кода когда поток определяет размер файла

Цитата:
while(nTotal < FileInfo.FileLength) do
begin

nToRead := (FileInfo.FileLength - nTotal);

if (nToRead > SizeOf(RcvBuf)) then
nToRead := SizeOf(RcvBuf);

nRead := SockStream.Read( RcvBuf, nToRead );
if (nRead = 0) then Exit;
nTotal := nTotal + nRead;
FileServer.ProgressBar1.Position:=nTotal;-здесь я меняю позицию прогрессбара
Application.ProcessMessages;
FileStream.Write( RcvBuf, nRead );
end;

но этот прогрессбар у меня создан на форме и он один для всех потоков.

код выше создает прогресбар для каждого потока и я не знаю как теперь к нему обращаться.

думаю что в процедуре создания прогрессбара нужно сделать передачу в поток вызвавший эту процедуру переменной I(Listview1.Items[i] ) но не знаю как сделать
Ответить с цитированием