有些动作可能会需要允许使用者做一些自定义的设置,例如:

  • 所依赖的某个程序的路径;
  • 调用API服务接口所需要的账号凭据;
  • 用户习惯设置;

相关内容:

实现原理

(1)为需要支持自定义设置的变量开启“作为状态使用”选项。
开启此选项后,如果修改了变量的值,则下次运行动作时会自动使用这个值作为变量的初始值。
image.png

(2)必要时,使用表单窗口等用户界面步骤,请用户修改变量的值:

  • 判断变量的值不合法时,如变量中未存储程序路径或路径不合法。
  • 用户通过右键菜单启动了设置界面。
  • 判断发现用户启动动作时按住了Ctrl键等。

示例动作

本教程将以“一译”动作为示例,向您介绍如何在动作中实现自定义设置的存储和设置。

动作简介:使用指定的翻译引擎对选中的内容进行翻译。并根据设定,将翻译结果写入剪贴板或发送到窗口替换掉选择的文字。

在这个动作中,将添加这些用户自定义项:
image.png

1. 定义要存储自定义设置的变量

image.png
在动作中,使用这些变量存储自定义设置:

  • vendor:存储选择使用的厂商
  • srcLang:翻译内容的源语言
  • dstLang:翻译内容的目标语言
  • autoPaste:是否自动粘贴翻译结果

例如,vendor变量的设置如下图所示:
image.png

2. 使用右键菜单触发设置窗口

关于右键菜单,请参考《为动作设计右键菜单》。

在动作选项中,可以看到定义里右键菜单数据:
[fa:Light_Cog:#FF0000]动作设置|settings
image.png
它用于显示一个带有红色齿轮图标的菜单项“动作设置”,点击该右键菜单后,会触发动作并为动作传递参数settings。
image.png

在动作中判断输入参数是否为菜单项的值“settings”,如果是的话,就显示设置界面然后结束动作。
image.png
{quicker_in_param}是动作收到的参数。判断条件为:
image.png
条件符合时,使用多字段表单窗口编辑4个变量值:
image.png

当参数值不是“settings”时,执行正常的动作逻辑:获取选中文本->翻译->输出结果:
image.png