简体   繁体   中英

Inno Setup: Resize uninstall progress form with all its components

Hey I need to increase width and height of UninstallProgressForm of my Inno Setup uninstaller.

When I changed its width and height manually according to my custom - designed installer wizard page width and height, uninstall progress form appeared weird.

Only changed thing is its width and height. All other components like uninstall progress bar, title, captions, details, buttons remain with theirs old default size.

在此处输入图片说明

I like to know how can I resize all the components.

Thanks in advance.

UPDATED QUESTION

- 这是我的安装页面的图像。

It has a Strectched WizardSmallBitmapImage , an Applogo (it is also a bitmap) , and more long cancel button .

I like to have those also in my UninstallProgressPage .

How can I resize those components in to the UninstallProgressForm to become similar to the components' size in Installing Page ?

Thank you for your help.

You have to increase sizes or shift positions of all window components, one by one. For list of components, see a definition of the TUninstallProgressForm class :

TUninstallProgressForm = class(TSetupForm)
  property OuterNotebook: TNewNotebook; read;
  property InnerPage: TNewNotebookPage; read;
  property InnerNotebook: TNewNotebook; read;
  property InstallingPage: TNewNotebookPage; read;
  property MainPanel: TPanel; read;
  property PageNameLabel: TNewStaticText; read;
  property PageDescriptionLabel: TNewStaticText; read;
  property WizardSmallBitmapImage: TBitmapImage; read;
  property Bevel1: TBevel; read;
  property StatusLabel: TNewStaticText; read;
  property ProgressBar: TNewProgressBar; read;
  property BeveledLabel: TNewStaticText; read;
  property Bevel: TBevel; read;
  property CancelButton: TNewButton; read;
end;

The code can be like:

const
  DeltaX = 150;
  DeltaY = 50;

procedure IncWidth(Control: TControl);
begin
  Control.Width := Control.Width + DeltaX;
end;

procedure IncHeight(Control: TControl);
begin
  Control.Height := Control.Height + DeltaY;
end;

procedure IncLeft(Control: TControl);
begin
  Control.Left := Control.Left + DeltaX;
end;

procedure IncTop(Control: TControl);
begin
  Control.Top := Control.Top + DeltaY;
end;

procedure IncWidthAndHeight(Control: TControl);
begin
  IncWidth(Control);
  IncHeight(Control);
end;

procedure InitializeUninstallProgressForm();
begin
  IncWidthAndHeight(UninstallProgressForm);
  IncWidth(UninstallProgressForm.Bevel);
  IncLeft(UninstallProgressForm.CancelButton);
  IncTop(UninstallProgressForm.CancelButton);
  IncWidthAndHeight(UninstallProgressForm.OuterNotebook);
  IncWidthAndHeight(UninstallProgressForm.InnerPage);
  IncWidth(UninstallProgressForm.Bevel1);
  IncWidthAndHeight(UninstallProgressForm.InnerNotebook);
  IncWidth(UninstallProgressForm.ProgressBar);
  IncWidth(UninstallProgressForm.StatusLabel);
  IncWidth(UninstallProgressForm.MainPanel);
  IncLeft(UninstallProgressForm.WizardSmallBitmapImage);
  IncWidth(UninstallProgressForm.PageDescriptionLabel);
  IncWidth(UninstallProgressForm.PageNameLabel);
  IncTop(UninstallProgressForm.BeveledLabel);
end;

更大的卸载窗口


See also How to change wizard size (width and height) in an Inno Setup installer?

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM