Inno设置 - 图像作为安装程序背景

时间:2016-12-08 21:23:31

标签: inno-setup

图片作为安装程序背景。如何用inno 5.5.9做到这一点?

enter image description here

2 个答案:

答案 0 :(得分:1)

我认为这在Inno Setup中是不可能的。也许是一些Inno Setup克隆。

问题是Inno Setup中的所有标签都是TStaticText,这是不透明的。所以你必须用TLabel替换所有。还有很多。它们由Inno Setup管理。因此,您必须以某种方式不断将新TStaticText更新为Inno Setup设置为原始TLabel的值。甚至可能都不可能。

实际上,可以在您的问题中创建一个页面。但仅仅是因为没有标准的Inno Setup标签。但你不能隐藏所有这些。

Installer with background image

procedure InitializeWizard();
var
  BackImage: TBitmapImage;
begin
  { Hide top panel }
  WizardForm.MainPanel.Visible := False;

  { Adjust "select dir" page controls for a stretched inner page size }
  WizardForm.DirEdit.Left := WizardForm.DirEdit.Left + WizardForm.InnerNotebook.Left;
  WizardForm.DirEdit.Top := WizardForm.DirEdit.Top + WizardForm.InnerNotebook.Top;
  WizardForm.DirBrowseButton.Left :=
    WizardForm.DirBrowseButton.Left + WizardForm.InnerNotebook.Left;
  WizardForm.DirBrowseButton.Top :=
    WizardForm.DirBrowseButton.Top + WizardForm.InnerNotebook.Top;

  { Hide non-transparent labels }    
  WizardForm.DiskSpaceLabel.Visible := False;
  WizardForm.SelectDirBrowseLabel.Visible := False;
  WizardForm.SelectDirLabel.Visible := False;

  { Stretch the outer page across whole form }
  WizardForm.OuterNotebook.Width := WizardForm.ClientWidth;
  WizardForm.OuterNotebook.Height := WizardForm.ClientHeight;

  { Stretch the inner page across whole outer page }
  WizardForm.InnerNotebook.Left := 0;
  WizardForm.InnerNotebook.Top := 0;
  WizardForm.InnerNotebook.Width := WizardForm.OuterNotebook.ClientWidth;
  WizardForm.InnerNotebook.Height := WizardForm.OuterNotebook.ClientHeight;

  { Put buttons on top of the page (image) }
  WizardForm.BackButton.BringToFront()
  WizardForm.NextButton.BringToFront();
  WizardForm.CancelButton.BringToFront();

  { Add a background image }    
  BackImage := TBitmapImage.Create(WizardForm);
  BackImage.Parent := WizardForm.SelectDirPage;
  BackImage.Top := 0;
  BackImage.Left := 0;  
  { ... }
  BackImage.Bitmap.LoadFromFile(...);
end;

类似的问题:

答案 1 :(得分:1)

也许您可以尝试 Graphical Installer进行Inno设置,这是专为此目的而设计的。

有了它,你可以创建看起来很酷的安装程序,它们支持更改背景(这张图片来自Shadow Tactics游戏的最后一个项目)mod:

Graphical Installer example

我是这个项目的开发人员(商业),所以如果您需要更多信息,请随时询问。