很多人都懂一些简单的电脑系统问题的解决方案,但是delphi7下载的解决思路却鲜为人知,小编前几天就遇到了delphi7下载的问题,于是准备整理一些delphi7下载的解决思路,其实只需要按照 1:打开Delphi7集成开发环境,在默认工程的Form1窗体放一个Button1控件和一个Timer1控件,设置Timer1的Enabled属性为False. 2:在Unit1.pas文件的implementation下添加以下代码: uses Gauges; var Gauge1: TGauge; 这个控件用来显示进度。 的步骤即可,大家一起来看看小编整理的关于delphi7下载的解决方法:
1:打开Delphi7集成开发环境,在默认工程的Form1窗体放一个Button1控件和一个Timer1控件,设置Timer1的Enabled属性为False.
2:在Unit1.pas文件的implementation下添加以下代码:
uses Gauges;
var Gauge1: TGauge;
这个控件用来显示进度。
3:双击Button1进入OnClick事件方法:
procedure TForm1.Button1Click(Sender: TObject);
var
form2: TForm;
begin
form2 := TForm.Create(nil);
form2.BorderStyle := bsSizeToolWin;
form2.Width := 400;
form2.Height := 80;
form2.Position := poDesktopCenter;
Gauge1 := TGauge.Create(form2);
Gauge1.MinValue := 0;
Gauge1.MaxValue := 100;
Gauge1.Width := form2.ClientWidth - 40;
Gauge1.Height := 30;
Gauge1.Left := 20;
Gauge1.Top := (form2.ClientHeight - Gauge1.Height) div 2;
Gauge1.Parent := form2;
Timer1.Interval := 100;
Timer1.Enabled := True;
form2.ShowModal;
form2.Free;
Timer1.Enabled := False;
end;
解释一下:
创建一个无Owner的form2,设置显示位置及大小,创建以form2为Owner的进度条,这样form2销毁时候进度条也会随着销毁,设置进度条的大小,设置Timer1的间隔并打开timer1,模态窗口方式显示form2,在Timer1中form2返回,再销毁form2,关闭Timer1
4:在Timer1的OnTimer事件方法中写如下代码,设置form2的showModal返回值。
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if Assigned(Gauge1) then
begin
Gauge1.Progress := Gauge1.Progress + 1;
if Gauge1.Progress = Gauge1.MaxValue then TForm(Gauge1.Parent).ModalResult := 1;
end;
end;
解释一下:
if Assigned(Gauge1) then
相当于 if Gauge1 <> nil then
Gauge1.Parent就是form2,在上一步的Button1的OnClick方法中设置的。
设置ModalResult,窗体的ShowModal方法返回了
5:F9运行程序,点击Button1按钮,可以看到进度条,当进度条到终点时,进度条所在窗体自动消失,非常适合程序下载进度显示