Вопрос Как сделать на каждой странице инсталлятора свою картинку?

PlayHard

Пользователь
Всем привет, помогите пожалуйста найти код с помощью которого на каждой странице инсталлятора своя картинка
 

Mailchik

Старожил
Проверенный
PlayHard, можно сначала скрыть все картинки, а потом для каждой страницы показывать нужную картинку.
Код:
procedure HideComponents;
begin;
Image1.Hide;
Image2.Hide;
Image3.Hide;
Image4.Hide;
Image5.Hide;
end;

procedure ShowComponents(CurPageID: Integer);
begin
  case CurPageID of
    wpWelcome: begin
    Image1.Show;
    end;

    wpSelectDir: begin
    Image2.Show;
    end;

    wpSelectComponents: begin
    Image3.Show;
    end;

    wpInstalling: begin
    Image4.Show;
    end;

    wpFinished: begin
    Image5.Show;
    end;
  end;
end;

Procedure CurPageChanged(CurPageID: Integer);
Begin
  HideComponents;
  ShowComponents(CurPageID);
end;
или же задавать родителя для каждой картинки:
Код:
procedure Images();
begin
Image1.Parent := Wizardform.WelcomePage;
Image2.Parent := Wizardform.SelectDirPage;
Image3.Parent := Wizardform.SelectComponentsPage;
Image4.Parent := Wizardform.InstallingPage;
Image5.Parent := Wizardform.FinishedPage;
end;

procedure InitializeWizard();
begin
Images();
end;
 

zmey

Пользователь
попробовал этот код не чего не вышло
Код:
var
Image1,Image2,Image3,Image4,Image5: TBitmapImage;
procedure HideComponents;
begin;
Image1.Hide;
Image2.Hide;
Image3.Hide;
Image4.Hide;
Image5.Hide;
end;

procedure ShowComponents(CurPageID: Integer);
begin
  case CurPageID of
    wpWelcome: begin
    Image1.Show;
    end;

    wpSelectDir: begin
    Image2.Show;
    end;

    wpSelectComponents: begin
    Image3.Show;
    end;

    wpInstalling: begin
    Image4.Show;
    end;

    wpFinished: begin
    Image5.Show;
    end;
  end;
end;

Procedure CurPageChanged(CurPageID: Integer);
Begin
  HideComponents;
  ShowComponents(CurPageID);
end;
в чём ошибка?
 
Последнее редактирование:

sergey3695

Ветеран
Модератор
zmey, в том что это часть кода, а не весь. надо назначить картинкам (TBitmapImage) расположение, ресурс, родителя.
 

sergey3695

Ветеран
Модератор
zmey,
Код:
[Setup]
AppName=Bmp
AppVersion=1.0
DefaultDirName=no
Compression=none
OutputDir=.

[Files]
DestName: "WizardForm.BitmapImage1.bmp"; Source: "E:\Безымянный.bmp"; Flags: dontcopy solidbreak

[code]
var
  BitmapImage1: TBitmapImage;

procedure RedesignWizardForm;
begin
  { BitmapImage1 }
  BitmapImage1 := TBitmapImage.Create(WizardForm);
  with BitmapImage1 do
  begin
    Parent := WizardForm.WelcomePage;
    Left := ScaleX(56);
    Top := ScaleY(72);
    Width := ScaleX(377);
    Height := ScaleY(201);
    ExtractTemporaryFile('WizardForm.BitmapImage1.bmp');
    Bitmap.LoadFromFile(ExpandConstant('{tmp}\WizardForm.BitmapImage1.bmp'));
  end;
end;

procedure InitializeWizard();
begin
  RedesignWizardForm;
end;
это как создать 1 картинку.
можно http://krinkels.org/threads/botva2.1931/
посмотреть, там примеры в комплекте. и достаточно подробная документация. чтоб не тяготить размер установщика bmp картинками.
 
Сверху