Inno Setup: доступ к пользовательскому элементу управления из события OnClick другого элемента управления

У меня есть следующий код для установки Inno:

procedure CheckBoxClick(Sender: TObject);
begin
  { How to make BrowseButton visible from here? }
end;

procedure CreateTheWizardPage;
var
  Page: TWizardPage;
  BrowseButton, FormButton: TNewButton;
  CheckBox: TNewCheckBox;
  Memo: TNewMemo;
begin
  Page := PageFromID(wpReady);      
  BrowseButton := TNewButton.Create(Page);
  CheckBox := TNewCheckBox.Create(Page); 
  CheckBox.OnClick := @CheckBoxClick;
end;

Мне интересно, как я могу получить доступ к пользовательским контроллерам на странице мастера из процедуры обработчика для одного из них?

1 ответ

Решение

Вы должны сделать BrowseButton переменная глобальная и определите ее перед обработчиком события:

var
  BrowseButton: TButton;

procedure CheckBoxClick(Sender: TObject);
begin
  { Now you can use the BrowseButton here }
end;

procedure CreateTheWizardPage;
var
  Page: TWizardPage;
  FormButton: TNewButton;
  CheckBox: TNewCheckBox;
  Memo: TNewMemo;
begin
  Page := PageFromID(wpReady);      
  BrowseButton := TNewButton.Create(Page);
  CheckBox := TNewCheckBox.Create(Page); 
  CheckBox.OnClick := @CheckBoxClick;
end;
Другие вопросы по тегам