创作带条件的“请稍候...”消息框

以下示例演示了如何创作条件消息框,每当用户贸然激活显示的控件时,该框会弹出并警告用户后台任务仍在运行。

该示例还演示通常如何使用 SpawnWaitDialog ControlEvent 保护触发依赖于后台任务完成的操作的控件。

此示例在安装过程中向用户显示一个选择对话框,其中包含三个标有“立即安装”、“下一步”和“磁盘开销”的按钮控件。 但安装程序在显示此对话框时也会在后台执行磁盘空间成本计算任务。 作者希望防止这些按钮被激活,并想在用户在成本计算任务完成之前单击任一按钮时弹出“请稍候”消息框。 作者还希望此消息框包含“取消”按钮,并在后台任务完成后立即消失。

显示一个对话框,要求用户等待后台磁盘成本计算完成

  1. 使用安装程序的创作功能将名为 WaitForCosting 的新模式对话框添加到 Dialog 表中。 该对话框应显示一个文本字符串,表示“请等待磁盘空间成本计算完成”。
  2. 通过将单个按钮控件创作到 Control 表中,将标有“取消”的按钮控件添加到此对话框。
  3. 通过将 EndDialog ControlEvent 创作到 ControlEvent 表中,将“取消”按钮链接到关闭 WaitForCosting 对话框的 ControlEvent。 将 EndDialog Control 事件的参数设置为退出。
  4. SpawnWaitDialog ControlEvent 链接到“选择”对话框中现有的“立即安装”、“下一步”和“磁盘花销”按钮控件。 将 ControlEvent 表中此 ControlEvent 的参数设置为 WaitForCosting 对话框,并将表的 Condition 列中的表达式设置为:CostingComplete =1。