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

Хамик

Старожил
Вот небольшой пример...как в нем скрыть страницу в зависимости от кнопки. Надо чтобы при нажатии кнопки "Стационарная" страница Page появлялась а при нажатии кнопки "Портативная" страница Page скрывалась. Спасибо!!!
Код:
[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;
 

Silentman

Новичок
Хамик, как вариант через функцию 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;
 
Последнее редактирование:

sergey3695

Ветеран
Модератор
так еще немного короче
Код:
function ShouldSkipPage(PageID: Integer): Boolean;
begin
if (PageID = Page.id) then Result := P.Checked;
end;
 

Хамик

Старожил
А этим способом можно скрыть форму(окошко) которая используется в функции?
 
Сверху