那位高手有下载文件的例子,要有进度条显示!先谢谢了!
解决方案 »
- 打开网页,如何屏蔽掉flash,声音,activex控件
- 获取VMT中动态表地址
- ★★国庆演练,散分,10:00结帖★★
- 想要设计一个通用的环行缓冲区管理器对象来管理不同的Record类型的数据,应该怎样写?
- 有没有哪个报表控件比较适合用于图片打印,急~
- //----------------IdFtp获取服务器文件Size的问题--------------------//
- 小小的问题,大家来看
- sql中的group by分组,分组是什么意思,什么情况下需要分组,目前我只知道分组是不显示重复数据
- Install Shield Express哪有载我的盘里的不能用!!
- 请教:如何判断服务是自动启动还是手工启动?
- 求教!谢谢!
- 使用delphi的BDE连oracle,出现问题,各位帮忙看一下
下面是Delphi7的例子。//---------------------------------------------------------
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdHTTP;type
TForm1 = class(TForm)
IdHTTP1: TIdHTTP;
Button1: TButton;
Edit1: TEdit;
ProgressBar1: TProgressBar;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
StatusBar1: TStatusBar;
procedure Button1Click(Sender: TObject);
procedure IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCountMax: Integer);
procedure IdHTTP1WorkEnd(Sender: TObject; AWorkMode: TWorkMode);
procedure IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
procedure IdHTTP1Status(ASender: TObject; const AStatus: TIdStatus;
const AStatusText: String);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var ss:TMemoryStream;
begin
ss:=TMemoryStream.Create;
button1.Enabled:=false;
try
IDHttp1.Get(Edit1.Text,ss);//下载到ss中
ss.SaveToFile(Edit2.Text);//将下载的文件保存到硬盘
finally
ss.Free;
button1.Enabled:=true;
end;
end;procedure TForm1.IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCountMax: Integer);
begin
ProgressBar1.Max:=AWorkCountMax;
end;procedure TForm1.IdHTTP1WorkEnd(Sender: TObject; AWorkMode: TWorkMode);
begin
ShowMessage('下载完毕!');
end;procedure TForm1.IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
begin
ProgressBar1.Position:= AWorkCount;
end;procedure TForm1.IdHTTP1Status(ASender: TObject; const AStatus: TIdStatus;
const AStatusText: String);
begin
StatusBar1.SimpleText:= '状态:'+AStatusText;
end;end.