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;