Inno Setup:确保用户已阅读“信息”页面

安德烈·莫伊谢耶夫(Andrey Moiseev)

我有一个Information页面,该页面是使用infobefore文件激活的

[Setup]
InfoBeforeFile=infobefore.txt

我想要:

  • 添加一个复选框(或几个复选框),用户必须检查该复选框以表明他已关注该信息。

  • 仅当用户选中复选框时,才应允许该用户继续。我想禁用“下一步”按钮或显示一个消息框,这比较容易。

是否有捷径可寻?

马丁·普里克里(Martin Prikryl)

只需在InfoBeforePage页面上添加一个新复选框即可NextButton根据复选框状态更新状态。

[Setup]
InfoBeforeFile=infobefore.txt

[Code]

var
  InfoBeforeCheck: TNewCheckBox;

procedure CheckInfoBeforeRead;
begin
  { Enable the NextButton only if InfoBeforeCheck is checked or }
  { installer is running in the silent mode }
  WizardForm.NextButton.Enabled := InfoBeforeCheck.Checked or WizardSilent;
end;

procedure InfoBeforeCheckClick(Sender: TObject);
begin
  { Update state of the Next button, whenever the InfoBeforeCheck is toggled }
  CheckInfoBeforeRead;
end;  

procedure InitializeWizard();
begin
  InfoBeforeCheck := TNewCheckBox.Create(WizardForm);
  InfoBeforeCheck.Parent := WizardForm.InfoBeforePage;
  { Follow the License page layout }
  InfoBeforeCheck.Top := WizardForm.LicenseNotAcceptedRadio.Top;
  InfoBeforeCheck.Left := WizardForm.LicenseNotAcceptedRadio.Left;
  InfoBeforeCheck.Width := WizardForm.LicenseNotAcceptedRadio.Width;
  InfoBeforeCheck.Height := WizardForm.LicenseNotAcceptedRadio.Height;
  InfoBeforeCheck.Caption := 'I swear I read this';
  InfoBeforeCheck.OnClick := @InfoBeforeCheckClick;

  { Make the gap between the InfoBeforeMemo and the InfoBeforeCheck the same }
  { as the gap between LicenseMemo and LicenseAcceptedRadio }
  WizardForm.InfoBeforeMemo.Height :=
    ((WizardForm.LicenseMemo.Top + WizardForm.LicenseMemo.Height) -
     WizardForm.InfoBeforeMemo.Top) +
    (InfoBeforeCheck.Top - WizardForm.LicenseAcceptedRadio.Top);
end;

procedure CurPageChanged(CurPageID: Integer);
begin
  if CurPageID = wpInfoBefore then
  begin
    { Initial state of the Next button }
    CheckInfoBeforeRead;
  end;
end;

我发誓我读了这个

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从Inno Setup安装JRE?

来自分类Dev

Inno Setup设置TInputQueryWizardPage高度

来自分类Dev

wpFinished页面上的Inno Setup替换按钮

来自分类Dev

Inno Setup中较大的“选择组件”页面

来自分类Dev

Inno Setup从CDATA创建TStringList

来自分类Dev

Inno Setup语法-OR,AND

来自分类Dev

Inno Setup Abs(Integer)功能

来自分类Dev

inno setup中的“ Not in a loop”错误

来自分类Dev

Inno设置页面顺序

来自分类Dev

基于外部信息的Inno Setup Set Password

来自分类Dev

Inno Setup:选择组件的功能

来自分类Dev

Inno Setup“安装完成”向导页面

来自分类Dev

Inno Setup隐藏日志条目

来自分类Dev

在Inno Setup中取消安装

来自分类Dev

Inno Setup禁用安装向导页面

来自分类Dev

Inno Setup更改CreateOutputMsgMemoPage字体

来自分类Dev

Inno Setup中的TTreeView

来自分类Dev

Inno Setup中的条件DisableProgramGroupPage

来自分类Dev

Inno Setup在wpPreparing页面上放置控件

来自分类Dev

未捕获Inno Setup异常

来自分类Dev

Inno Setup ComponentsList OnClick事件

来自分类Dev

缺少Inno-Setup分号

来自分类Dev

在Inno Setup中记录TWindowsVersion

来自分类Dev

Inno Setup用户主路径

来自分类Dev

Inno Setup:禁用完成页面

来自分类Dev

Inno Setup“安装完成”向导页面

来自分类Dev

Inno Setup禁用安装向导页面

来自分类Dev

Inno Setup 从输入用户解压文件

来自分类Dev

用户输入后 Inno Setup 向导更改页面