1. Уважаемые гости и пользователи форума.
    Администрация настоятельно рекомендует не регистрировать несколько аккаунтов для одного пользователя. При выявлении наличия мультиаккаунтов будут заблокированы все учетные записи данного пользователя.
    Аккаунты, зарегистрированные на временную почту будут также заблокированы.

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

Тема в разделе "Inno Setup", создана пользователем PlayHard, 28 авг 2012.

  1. Ветеран

    Регистрация:
    8 май 2012
    Сообщения:
    54
    Симпатии:
    3
    Всем привет, помогите пожалуйста найти код с помощью которого на каждой странице инсталлятора своя картинка
     
  2. Ветеран R.G. Revenants

    Регистрация:
    19 дек 2011
    Сообщения:
    350
    Симпатии:
    402
    PlayHard, можно сначала скрыть все картинки, а потом для каждой страницы показывать нужную картинку.
    Код (Text):
    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;
    или же задавать родителя для каждой картинки:
    Код (Text):
    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;
     
     
    PlayHard нравится это.
  3. Старожил

    Регистрация:
    4 июн 2015
    Сообщения:
    3
    Симпатии:
    0
    Пол:
    Мужской
    Люди здесь кто нибудь ещё есть?
     
  4. Ветеран Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    1.299
    Симпатии:
    827
    нет никого.
     
  5. Старожил

    Регистрация:
    4 июн 2015
    Сообщения:
    3
    Симпатии:
    0
    Пол:
    Мужской
    попробовал этот код не чего не вышло
    Код (Text):

    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;

     
    в чём ошибка?
     
    Последнее редактирование: 2 фев 2019
  6. Ветеран Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    1.299
    Симпатии:
    827
    zmey, в том что это часть кода, а не весь. надо назначить картинкам (TBitmapImage) расположение, ресурс, родителя.
     
  7. Старожил

    Регистрация:
    4 июн 2015
    Сообщения:
    3
    Симпатии:
    0
    Пол:
    Мужской
    sergey3695, Подскажи как это сделать.
     
  8. Ветеран Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    1.299
    Симпатии:
    827
    zmey,
    Код (Inno):
    [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 картинками.
     

Поделиться этой страницей