简单对话框

使用简单方法时,脚本不负责对话框的消息循环。相反,该脚本准备一个 Dialog 对象,并调用 Show 方法来显示对话框。Show 方法在用户关闭对话框之前不会返回,届时您可以读取对话框上任何控件的值以了解用户提供了什么数据。

若要允许用户关闭对话框,您应添加一个或多个 Button 控件,且 Close Dialog 属性设为 TrueShow 方法的返回值将是您为按钮的 Return Value 属性指定的值。

以下是一个使用简单方法显示对话框的脚本示例。还包括用于对话框的原始 XML。如果您想尝试此示例,请创建一个新的工具栏按钮,并将脚本代码粘贴到命令编辑器的 Script Code 标签页中,并将资源 XML 粘贴到 Resources 标签页中。所有以下示例均以 VBScript 编写。

脚本代码 - VBScript

Function OnClick(ByRef clickData)
  Set Dlg = DOpus.Dlg
  Dlg.window = clickData.func.sourcetab
  Dlg.template = "testdlg"
  retVal = Dlg.Show
  DOpus.Output "Return code = " & retVal
End Function

脚本代码 - JScript

function OnClick(clickData) {
  var Dlg = DOpus.Dlg;
  Dlg.window = clickData.func.sourcetab;
  Dlg.template = "testdlg";
  var retVal = Dlg.Show();
  DOpus.Output("Return code = " + retVal);
}

资源

<resources>
  <resource name="testdlg" type="dialog">
    <dialog fontsize="8" height="58" lang="" title="Test!" width="180">
      <control halign="left" height="8" name="static1" title="Test Dialog"
               type="static" width="35" x="72" y="9" />
      <control close="1" default="yes" height="14" name="button1" title="One"
               type="button" width="50" x="9" y="30" />
      <control close="2" height="14" name="button2" title="Two"
               type="button" width="50" x="66" y="30" />
      <control close="3" height="14" name="button3" title="Three"
               type="button" width="50" x="122" y="30" />
    </dialog>
  </resource>
</resources>

此脚本创建并显示以下对话框:

在脚本中,Dialog.Show 方法在 Dlg 对象上调用,其返回值 (retVal) 对应于您在对话框中单击的按钮。然后将该值打印到脚本输出日志中。

Show 方法返回时,您的脚本可以读取它可能已添加到对话框的任何控件的值 — 有关此示例,请参阅 Reading Dialog Control Values 页面。

最后更新于