2

How can I customize the installing page of Inno Setup?

Here exactly shows the changes that are going to be made.

Before

before

After

after

Now, status text 'Installing Collectica' will be static and not dynamic.

Also, adding extra time to the progress bar.

I will appreciate your answers. Thanks

Martin Prikryl
  • 188,800
  • 56
  • 490
  • 992

1 Answers1

5

You have to customize WizardForm.InstallingPage:

  • Hide the FilenameLabel and StatusLabel
  • Add you custom label
  • Add the image

For the first two:

procedure InitializeWizard();
var
  CustomStatusLabel: TNewStaticText;
begin
  WizardForm.FilenameLabel.Visible := False;
  WizardForm.StatusLabel.Visible := False;

  WizardForm.ProgressGauge.Top := WizardForm.InstallingPage.Height - ScaleY(60);

  CustomStatusLabel := TNewStaticText.Create(WizardForm);
  CustomStatusLabel.Parent := WizardForm.InstallingPage;
  CustomStatusLabel.Caption := 'Installing Colectica';
  CustomStatusLabel.Font.Size := CustomStatusLabel.Font.Size + 4;
  CustomStatusLabel.Font.Style := [fsBold];
  CustomStatusLabel.AutoSize := True;
  CustomStatusLabel.Top :=
    WizardForm.ProgressGauge.Top - CustomStatusLabel.Height - ScaleY(8);
  CustomStatusLabel.Left :=
    WizardForm.ProgressGauge.Left +
    ((WizardForm.ProgressGauge.Width - CustomStatusLabel.Width) div 2);
end;

enter image description here

For the image, see:
Inno Setup Placing image/control on custom page

Martin Prikryl
  • 188,800
  • 56
  • 490
  • 992