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

Вопрос Скрыть кастомну страницу....

Тема в разделе "Inno Setup", создана пользователем Хамик, 13 июн 2014.

  1. Ветеран

    Регистрация:
    27 мар 2014
    Сообщения:
    313
    Симпатии:
    54
    Пол:
    Мужской
    Вот небольшой пример...как в нем скрыть страницу в зависимости от кнопки. Надо чтобы при нажатии кнопки "Стационарная" страница Page появлялась а при нажатии кнопки "Портативная" страница Page скрывалась. Спасибо!!!
    Код (Text):
    [Setup]
    AppName=My Application
    AppVersion=1.5
    DefaultDirName={pf}\My Application

    [Code]
    var
    I, P: TNewRadioButton;
    Page: TWizardPage;

    procedure InitializeWizard();
    begin

    Page := CreateCustomPage(wpSelectTasks, 'ISCustomPage1_Caption', 'ISCustomPage1_Description');

    P := TNewRadioButton.Create(WizardForm);
        with P do
        begin
        Parent := WizardForm.SelectDirPage;
        Left := ScaleX(164);
        Top := ScaleY(150);
        Width := ScaleX(150);
        Height := ScaleY(17);
        Caption := 'Портативная';
        end;

      I := TNewRadioButton.Create(WizardForm);
        with I do
        begin
        Parent := WizardForm.SelectDirPage;
        Left := ScaleX(32);
        Top := ScaleY(150);
        Width := ScaleX(120);
        Height := ScaleY(17);
        Caption := 'Стационарная';
        Checked:= true;
      end;
    end;
     
  2. Ветеран

    Регистрация:
    27 авг 2013
    Сообщения:
    63
    Симпатии:
    43
    Хамик, как вариант через функцию ShouldSkipPage:
    [Setup]
    AppName=My Application
    AppVersion=1.5
    DefaultDirName={pf}\My Application

    [Code*]
    var
    I, P: TNewRadioButton;
    Page: TWizardPage;
    procedure InitializeWizard();
    begin
    Page := CreateCustomPage(wpSelectTasks, 'ISCustomPage1_Caption', 'ISCustomPage1_Description');
    P := TNewRadioButton.Create(WizardForm);
    with P do
    begin
    Parent := WizardForm.SelectDirPage;
    Left := ScaleX(164);
    Top := ScaleY(150);
    Width := ScaleX(150);
    Height := ScaleY(17);
    Caption := 'Портативная';
    end;
    I := TNewRadioButton.Create(WizardForm);
    with I do
    begin
    Parent := WizardForm.SelectDirPage;
    Left := ScaleX(32);
    Top := ScaleY(150);
    Width := ScaleX(120);
    Height := ScaleY(17);
    Caption := 'Стационарная';
    Checked:= true;
    end;
    end;

    function ShouldSkipPage(PageID: Integer): Boolean;
    begin
    if P.Checked then
    if (PageID = Page.id) then Result := True;
    end;
     
    Последнее редактирование: 14 июн 2014
    Хамик и sergey3695 нравится это.
  3. Ветеран Модератор

    Регистрация:
    26 июн 2011
    Сообщения:
    896
    Симпатии:
    613
    так еще немного короче
    Код (Text):
    function ShouldSkipPage(PageID: Integer): Boolean;
    begin
    if (PageID = Page.id) then Result := P.Checked;
    end;
     
    Хамик нравится это.
  4. Ветеран

    Регистрация:
    27 мар 2014
    Сообщения:
    313
    Симпатии:
    54
    Пол:
    Мужской
    А этим способом можно скрыть форму(окошко) которая используется в функции?
     

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