p; begin FormUpdate; if assigned(FDlgForm) then DoShow; end;
function TdsWaitDialogEx.setLableHeight(sCaption:string):integer; var i,iMax:integer; begin result:=0; if FaviPosition = aviLeft then iMax:=48 else iMax:=56; i:=length(sCaption)-iMax; //56; // > 1 行 48 if i<=0 then exit; if (i mod 56)>0 then result:=(i div 56 +1) * 13 else result:=(i div 56) * 13; end;
procedure TdsWaitDialogEx.DrawForm; var H,aH:integer; begin if not assigned(FDlgForm) then exit; case FaviPosition of aviTop: begin FDlgForm.Label1.Height:=13+setLableHeight(FDlgForm.Label1.Caption); FDlgForm.Label2.Height:=13+setLableHeight(FDlgForm.Label2.Caption); FDlgForm.Width := 356 ; FDlgForm.Animate1.Top := 3; FDlgForm.Gauge1.Left :=14; FDlgForm.Gauge1.Width :=320; FDlgForm.Label1.Left := 9; FDlgForm.Label1.Width :=340; FDlgForm.Label2.Left := 9; FDlgForm.Label2.Width :=340; FDlgForm.Animate1.Left:=(FDlgForm.Width div 2)-(FDlgForm.Animate1.Width div 2); // Animate1 居中 FDlgForm.Label1.Top := 3 + FDlgForm.Animate1.Height + 8 ; FDlgForm.Label2.Top := FDlgForm.Label1.Top + FDlgForm.Label1.Height + 4; FDlgForm.Gauge1.Top := FDlgForm.Label2.Top + FDlgForm.Label2.Height + 6; FDlgForm.Height:= 27 + 3 + FDlgForm.Animate1.Height + 8 + FDlgForm.Label1.Height + 4 + FDlgForm.Label2.Height + 6 + FDlgForm.Gauge1.Height + 6; if not FshowAVI then begin FDlgForm.Label1.Top := FDlgForm.Label1.Top - FDlgForm.Animate1.Height ; FDlgForm.Label2.Top := FDlgForm.Label2.Top - FDlgForm.Animate1.Height ; FDlgForm.Gauge1.Top := FDlgForm.Gauge1.Top - FDlgForm.Animate1.Height; FDlgForm.Height := FDlgForm.Height - FDlgForm.Animate1.Height; end; if not FShowMessage1 then begin FDlgForm.Label2.Top := FDlgForm.Label2.Top - FDlgForm.Label1.Height - 4; FDlgForm.Gauge1.Top := FDlgForm.Gauge1.Top - FDlgForm.Label1.Height - 4; FDlgForm.Height := FDlgForm.Height - FDlgForm.Label1.Height - 4; end; if not FShowMessage2 then begin FDlgForm.Gauge1.Top := FDlgForm.Gauge1.Top - FDlgForm.Label2.Height - 4; FDlgForm.Height := FDlgForm.Height - FDlgForm.Label2.Height - 4; end; if not FShowProgress then begin FDlgForm.Height := FDlgForm.Height - FDlgForm.Gauge1.Height-6; end; end;
aviLeft: begin FDlgForm.Label1.Height:=13+setLableHeight(FDlgForm.Label1.Caption); FDlgForm.Label2.Height:=13+setLableHeight(FDlgForm.Label2.Caption); FDlgForm.Label1.Width :=288; FDlgForm.Label2.Width :=288; FDlgForm.Label1.Left := 12+FDlgForm.Animate1.Width; FDlgForm.Label2.Left := FDlgForm.Label1.Left; FDlgForm.Label1.Top :=11; FDlgForm.Label2.Top :=11+FDlgForm.Label1.Height+4; FDlgForm.Gauge1.Left :=16; FDlgForm.Animate1.Left :=6; FDlgForm.Animate1.Top :=11 ; FDlgForm.Width := FDlgForm.Animate1.Width+306;
aH:=FDlgForm.Animate1.Height; if not FshowAVI then begin FDlgForm.Gauge1.Width :=291; FDlgForm.Width :=329; FDlgForm.Label1.Left := 16; FDlgForm.Label2.Left := 16; aH:=0; end; if not FShowProgress then begin FDlgForm.Height := FDlgForm.Height-26; end; H:=FDlgForm.Label1.Height+4+FDlgForm.Label1.Height; if not FShowMessage1 then begin H:=H-FDlgForm.Label1.Height; FDlgForm.Label2.Top := 11 ; end; if not FShowMessage2 then begin H:=H-FDlgForm.Label2.Height; end;
if H<aH then H:=aH; FDlgForm.Gauge1.Top :=11+H+12; FDlgForm.Gauge1.Width :=FDlgForm.Width-33; FDlgForm.Height:=FDlgForm.Gauge1.Top+53; end;
aviBottom: begin FDlgForm.Label1.Height:=13+setLableHeight(FDlgForm.Label1.Caption); FDlgForm.Label2.Height:=13+setLableHeight(FDlgForm.Label2.Caption); FDlgForm.Width := 356 ; FDlgForm.Label1.Top := 8 ; FDlgForm.Label2.Top := FDlgForm.Label1.Top + FDlgForm.Label1.Height + 4; FDlgForm.A 上一页 [1] [2] [3] [4] [5] [6] 下一页 没有相关教程
|