以编程方式更改 WizardSmallImageFile - Inno Setup

gra*_*oke 1 inno-setup

是否可以根据向导表单更改向导表单上的顶部图像。我可以更改左侧图像,但想更改顶部(小图像)。

procedure CurPageChanged(CurPageID: Integer);
begin
  if CurPageID = 4 then
   filename:= 'babylontoolbar.bmp'
  else
   filename:= 'label2-crop.bmp';
  ExtractTemporaryFile(filename); 
  (*WizardForm.WizardSmallImageFile.Bitmap.LoadFromFile(ExpandConstant('{tmp}\'+FileName));*)

  WizardForm.WizardBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\' + FileName));
end;
Run Code Online (Sandbox Code Playgroud)

我只是想知道如何引用小文件来替换WizardSmallImageFile不起作用的文件。

TLa*_*ama 5

WizardSmallImageFile指令映射到WizardSmallBitmapImage的控件WizardForm,因此在代码中您可以通过这种方式访问​​它(无论如何,不​​要硬编码页面 ID 号,而是使用预期的PageID常量):

procedure CurPageChanged(CurPageID: Integer);
var
  FileName: string;
begin
  if CurPageID = wpInfoBefore then
    FileName := 'babylontoolbar.bmp'
  else
    FileName := 'label2-crop.bmp';

  ExtractTemporaryFile(FileName);
  WizardForm.WizardSmallBitmapImage.Bitmap.LoadFromFile(ExpandConstant('{tmp}\' + FileName));
end;
Run Code Online (Sandbox Code Playgroud)