703
社区成员
发帖
与我相关
我的任务
分享void DownloadFileTo(int idx, AnsiString FileName) //模拟从网上下载文件并保存到FileName
{
//Sleep(10000); //花了1秒钟下载(在实际下载中,建议使用While(!完成下载) Application->ProcessMessage();代替以防止假死)
//模拟下载进度条
TfmDownload *pfm = new TfmDownload(Application);
pfm->Timer1->Enabled = true;
pfm->ShowModal(); //这里等窗体关闭.
delete pfm;
//我这里就随便建个文件代替吧-_-
TIcon *ico = new TIcon;
fmMain->ilIcons->GetIcon(idx, ico);
ico->SaveToFile(FileName);
delete ico;
}
//---------------------------------------------------------------------------
void __fastcall TfmDownload::Timer1Timer(TObject *Sender) //这个Timer是用来模拟你下载百分比进度的,完成下载以后关闭这个窗体.
{
ProgressBar1->StepIt();
if(ProgressBar1->Position>=ProgressBar1->Max) Close();
}
//---------------------------------------------------------------------------
void __fastcall TfmDownload::btnCancelClick(TObject *Sender) //按取消按钮直接关闭窗体(实际使用时可以用ModalResult代替,这样可以作为下载是否成功的指示, 上同)
{
Close();
}
//---------------------------------------------------------------------------