显示自定义对话框

显示带自定义文本和标签的自定义消息对话框。

选项 

常规选项

  • 标题”指定自定义对话框的标题。可以输入文字文本或单击“指定”使用算式创建对话框标题。
  • 消息”指定对话框的消息。可以输入文字文本或单击“指定”使用算式创建消息文本。
  • 按钮标签”指定在自定义对话框中显示的按钮个数(最多三个)以及这些按钮的标签。如果按钮标签为空,自定义对话框中将不显示该按钮。如果所有按钮标签均为空,则将在自定义对话框的右下角显示一个“确定”按钮。要根据计算结果创建按钮标签,请单击“指定”,然后指定计算方式。
  • 提交数据”复选框会根据每个按钮的操作将输入从对话框传递到目标字段或变量。字段为目标时,如果布局上没有活动字段,则将提交数据;如果字段处于活动状态,则将在提交记录时提交数据。如果没有为按钮启用该复选框,并且用户在输入字段中输入数据,则在用户单击该按钮时,不将任何数据提交到记录或者存储到变量中。

输入字段选项

  • 显示输入字段 <n>”激活输入字段。
  • 指定”可为输入选择目标字段或变量。
  • 使用密码字符 (*)”屏蔽输入的文本或数据库中显示的文本。该选项用于对输入到自定义对话框中的数据或显示的数据进行加密,但不会更改存储在数据库中的实际数据。
  • 标签”指定标签(即,将用于向用户标识此输入的文本)。可以输入文字文本,也可以使用算式创建标签。

兼容性 

产品 是否支持
FileMaker Pro
FileMaker Go
FileMaker WebDirect
FileMaker Server
FileMaker Cloud
FileMaker Data API
自定义 Web 发布

原始版本 

6.0 或更低版本

说明 

使用“显示自定义对话框”选项对话框,可以设置对话框标题、消息文本和按钮,并且最多可以指定三个用于输入或显示的字段或变量。只要自定义对话框停留在屏幕上,脚本就会暂停。输入字段的类型可以为文本、数值、日期、时间、时间戳或容器。用于输入的变量将值存储为文本。自定义对话框还可以有最多三个带自定义按钮标题的按钮。

使用 Get (上次选择信息)函数来确定用户所要按的按钮。

  • 1”,表示第一个按钮(默认情况下,标记为“确定”)
  • 2”,表示第二个按钮(默认情况下,标记为“取消”)
  • 3”,表示第三个按钮

注释 

  • 如果输入到输入字段中的值与目标字段类型不匹配,将显示一个验证错误信息。用户必须解决验证错误,对话框才能关闭。请参阅定义字段验证
  • 指定的目标字段无需显示在当前布局中。“显示自定义对话框”输入字段与布局无关,这与“设置字段”脚本步骤类似。
  • 数据不能插入到算式或合计字段中。
  • “显示自定义对话框”会忽略所有字段输入选项。请参阅允许或防止向字段输入数据
  • 通过“显示自定义对话框”脚本步骤输入的数据受到所有已设置的访问权限条件的限制。(要对所有用户启用脚本,请在脚本面板中右键单击当前脚本,然后选择“授予完全访问权限”。)
  • (Windows) 可以通过在按钮标签的快捷键字母前放置一个 & 符号为自定义对话框按钮创建一个键盘快捷键。例如,要为标签为“Done”的按钮创建键盘快捷方式“D”(Alt+D),请键入标签“&Done”。
  • 在为已使用的数据库更改按钮的数据提交状态之前,请考虑用户当前预期按钮执行的行为,以及更改按钮的行为会如何影响已提交给(或未提交给)数据库的数据的有效性。
  • 要编制更复杂的自定义对话框,您可以使用新建窗口脚本步骤

示例 1 

执行查找。如果没有找到记录,则显示自定义对话框。

复制
执行查找 [恢复]
If [Get (查找个数) = 0]
    显示自定义对话框 ["未找到记录。"]
End If

示例 2 

新建一条记录,提示用户输入信息,然后转到“客户详细信息”布局。第一个按钮是“取消”,这样用户就不会因无意中在自定义对话框中按 Return 或 Enter 键而创建记录了。

复制
冻结窗口
新建记录/请求
显示自定义对话框 ["新客户"; "将信息输入到下面的字段中:"; 客户::公司; 客户::名称; 客户::城市]
If [Get ( 上次选择信息 ) = 1]
    删除记录/请求 [包括对话框:关闭]
Else
    转到布局 ["客户详细信息"]
End If

示例 3 

进入查找模式,提示用户输入查找条件,然后执行查找。如果查找未返回任何记录,询问用户是否再次进行查找,然后再次执行脚本,或暂停所有脚本。

脚本:查找

复制
进入查找模式 [暂停:关闭]
显示自定义对话框 ["按 ID、名称或城市查找客户。"; 客户::ID; 客户::名称; 客户::城市]
If [Get ( 上次选择信息 ) = 1]
    执行查找 [ ]
    If [Get ( 查找个数 ) = 0]
        显示自定义对话框 ["未找到记录。是否再次执行查找?"]
        If [Get ( 上次选择信息 ) = 1]
            #作为子脚本调用此脚本
            执行脚本 [指定:源列表 ; "查找" ; 参数: ]
        Else
            显示所有记录
            #中断所有脚本和子脚本
            中断脚本
        End If
    End If
Else If [Get ( 上次选择信息 ) = 2]
    进入浏览模式 [暂停:关闭]
End If