スレッド内の更新に関する以前の質問のフォローアップはlistview
こちら
以前の質問を解決するために別の方法で考え始めました。ダウンロード プロセスに時間がかかりすぎて、帯域幅が大量に必要になるためです。ダウンロードGIFimage
してディスクに保存し、後でアプリケーション内で使用します。これは現在のダウンロード スレッド コードです。
procedure TDownloadImage.Execute;
var
aMs: TMemoryStream;
aIdHttp: TIdHttp;
begin
FGif := TGifImage.Create;
try
aMs := TMemoryStream.Create;
try
aIdHttp := TIdHttp.Create(nil);
try
aIdHttp.Request.UserAgent := 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0';
aIdHttp.Get(FURL, aMs); // here is the client FURL
finally
aIdHttp.Free;
end;
aMs.Position := 0;
FGif.LoadFromStream(aMs);
FGif.Transparent := True;
finally
aMs.Free;
end;
if Assigned(FOnImageReady) then
Synchronize(DoImageReady);
end;
finally
FGif.Free;
end;
end;
FURL のイメージをコンピュータ クライアントに保存したいのですが、このイメージを再度ダウンロードするように要求された場合、ダウンロード プロセスを中止し、クライアント コンピュータからロードする方法を教えてください。