跳到主要内容

用户选择

弹出一个列表窗口,等用户选出一项(或多选几项)后再继续后面的步骤。适合从常用网址、短语、日期格式里挑一个,或决定后面走哪条分支。

当前模块定义

sys:select基础Action
标准模块
输入 26 · 输出 9 · 枚举 5

输入参数

  • 类型typeEnum必填
    填写 固定输入默认 single
    单选默认single
    多选multi
  • 窗口标题promptText必填
    填写 固定输入默认 请选择
  • 提示信息noteText可选
    填写 固定输入
  • 选项itemsText必填

    每行一个选项,格式为 "文本" 或 "显示文本|值"。如需显示图标,格式请参考文档。

    填写 输入或变量
  • 默认值defaultValueText可选

    预先选择的项

    填写 输入或变量条件 仅:single
  • 默认值defaultValueMultiText可选

    多选时默认选项,每行一个

    填写 输入或变量条件 仅:multi
  • 窗口位置winLocationEnum可选

    在哪里显示选择窗口

    填写 输入或变量默认 WithMouse1
    12 个选项跟随鼠标(指针周围)、跟随鼠标(指针右下)、屏幕中间
    跟随鼠标(指针周围)默认WithMouse1
    跟随鼠标(指针右下)WithMouse2
    屏幕中间CenterScreen
    屏幕左上TopLeft
    屏幕中上TopCenter
    屏幕右上TopRight
    屏幕左中LeftCenter
    屏幕右中RightCenter
    屏幕左下BottomLeft
    屏幕中下BottomCenter
    屏幕右下BottomRight
    自定义位置Manual
  • 最大尺寸/位置坐标maxWinSizeText可选

    可选。设置选择窗口的最大尺寸,格式为:宽度,高度。支持像素数值或屏幕宽高百分比,详情请参考模块文档。\n"窗口位置" 类型为 "自定义位置" 时用于指定显示位置,格式为:left,top,right,bottom

    填写 固定输入
  • 使用上次位置keepLastPosEnum可选

    重复显示选择窗口时,保持上次的显示位置。

    填写 输入或变量默认 1
    9 个选项不保持、保持本次运行的上次位置(左上角、保持本次运行的上次位置+宽度
    不保持0
    保持本次运行的上次位置(左上角3
    保持本次运行的上次位置+宽度默认1
    保持本次运行的上次位置+尺寸5
    保持本次运行的上次窗口尺寸7
    总是保持上次位置(左上角4
    总是保持上次位置+宽度2
    总是保持上次位置+尺寸6
    总是保持上次窗口尺寸8
  • 自动关闭autoCloseSecondsNumber可选

    几秒后自动关闭选择窗口。0表示不自动关闭。

    填写 固定输入默认 0.0
  • 不使用焦点noKeyboardBoolean可选

    不抢占其他应用的焦点。此时无法使用键盘选择选项,只能用鼠标操作。

    填写 输入或变量默认 false
  • 失去焦点后关闭窗口(仅在使用焦点时有效)closeOnDeactivatedBoolean可选
    填写 固定输入默认 false
  • 启用筛选showFilterEnum可选

    是否显示筛选框。仅在且使用焦点时有效。

    填写 输入或变量默认 auto
    不启用0
    启用1
    自动(选项超过10个时启用默认auto
  • 筛选内容filterContentText可选

    预先显示的筛选内容

    填写 输入或变量
  • 输入法状态imeStateEnum可选

    筛选框输入法状态

    填写 输入或变量默认 NO_CONTROL
    不控制默认NO_CONTROL
    开启ON
    关闭OFF
  • 恢复活动窗口到弹出前restoreForegroundBoolean可选

    将前台窗口还原为弹窗前的活动窗口。否则将会还原到最后一个活动窗口上。

    填写 固定输入默认 true
  • 允许不选择任何选项时点击确定allowOkWhenEmptyBoolean可选
    填写 固定输入默认 false
  • 启用快速确认(点击选项后立即确认选择并关闭窗口)enableQuickConfirmBoolean可选
    填写 固定输入条件 仅:single默认 true
  • 置顶显示topMostBoolean可选
    填写 固定输入默认 true
  • 取消后停止stopIfCancelBoolean可选

    取消选择后是否停止动作

    填写 固定输入默认 true
  • 右键/全局菜单operationsText可选

    每行定义一个操作,具体格式请参考文档。

    填写 固定输入
  • 字体大小fontsizeNumber必填
    填写 输入或变量默认 12.0
  • 字体名称fontfamilyText可选

    可选。设置字体名称。如有多个字体,使用逗号分隔。

    填写 输入或变量
  • 图标大小iconsizeNumber必填
    填写 输入或变量默认 16.0
  • 窗口标识windowKeyText可选

    再次运行动作时,可根据标识自动关闭前一个窗口并在该位置显示新窗口。

    填写 输入或变量
  • 帮助按钮内容helpText可选

    点击弹出显示帮助内容,MarkDown格式

    填写 固定输入

输出参数

  • 是否确认isSuccessBoolean

    是否成功选择了选项/点击了保存按钮

  • 选择的项(值)textValueText

    选中选项的值

    条件 仅:single
  • 索引号selectedIndexInteger

    选择的项在列表里的序号数字,从0开始。

    条件 仅:single
  • 索引号列表selectedIndexListList

    所有选择的项的序号列表

    条件 仅:multi
  • 选择的项值列表multiSelectedList

    所有选择的项的值的列表

    条件 仅:multi
  • 选择的菜单extraOperationText

    选择的右键菜单或全局菜单项的值

  • 选择的完整选项selectedFullItemsAny

    选择选项的完整定义内容(不仅仅返回选项值)

  • 选择的选项标题selectedItemTitleText

    所选中选项的标题

    条件 仅:single
  • 筛选内容filterContentText

    最后使用的筛选词

概述

例如 插入日期时间:先选一种格式,再插入到当前文档。

单选且开启 启用快速确认(默认开)时,点一项就选中并关掉窗口。多选要自己点「确定」。

操作:

单选多选
鼠标左键点一项即确认左键点选/取消;按住拖动可连选
键盘上下移动,空格确认上下移动,空格切换勾选
数字Ctrl+1Ctrl+9 选对应项同样切换勾选

任何时候可用 Ctrl+F 打开筛选(窗口占着焦点时)。筛选默认模糊匹配,支持拼音、不连续字符。要改成严格包含,在关键词前加 !,例如 !城区(1.39.16+)。

单选与多选

类型 决定窗口怎么选、输出什么:

  • 单选:输出文本。「选择的项(值)」是选中项的值,「索引号」从 0 起。
  • 多选:输出列表。「选择的项值列表」「索引号列表」都是列表。

用户选择

请用户选择一个选项。
类型
索引号列表
indexes
所有选择的项的序号列表
选择的项值列表
paths
所有选择的项的值的列表

参数说明

窗口标题、提示信息和选项

左边改参数,右边是运行时窗口。标题进标题栏,选项进列表(显示|值 只显示左边)。

参数

用户选择

请用户选择一个选项。
窗口标题
提示信息
选项
每行一个选项,格式为 "文本" 或 "显示文本|值"。如需显示图标,格式请参考文档。
默认值
预先选择的项
选择的项(值)
format
选中选项的值
运行效果拖动
  • prompt → prompt
  • items → items
  • note → note

窗口标题:列表窗口标题栏文字。

提示信息:显示在列表下方。

选项:每行一项。格式:

  • 选项内容:显示和值相同
  • 显示文字|值:竖线左边给人看,右边作为返回值
  • [fa:Light_Pen:#99AAFF]显示文字(Tooltip 至少 3 个字)|值:可选图标和悬浮说明。有 Tooltip 时,|值 不能省

图标写法见 在动作中使用图标

默认分隔符是 |。要换成分隔符,把第一行写成 |=新分隔符(前面不要空格)。插值时写成 $$|=新分隔符

用户选择

请用户选择一个选项。
选项
|=&& a&&b b&&bbbb c&&cccc
每行一个选项,格式为 "文本" 或 "显示文本|值"。如需显示图标,格式请参考文档。

选项也可以用词典:填 $={词典变量}。词典的键是显示文字,值是返回值。此时「选择的项(值)」是 Value,「选择的完整选项」是 Key。要反过来,先用 词典操作 的「翻转键值」。

默认值

单选(默认值):先按选项的值匹配;匹配不到再看是不是从 0 起的序号(1.1.2+)。

多选(同样叫 默认值):要预选的值列表。多行文本会按自动转换当成列表。也可以把第 0 项写成 //byIndex,后面各项写从 0 起的序号(1.43.51+)。

右键 / 全局菜单

每行一项,格式仍是 显示内容|值。点了之后从 选择的菜单 输出。行首写 [=] 就是标题栏/底栏的全局菜单,否则是右键菜单。特别常用的全局项可在标题前加 !,显示成独立按钮(1.44.26+)。

参数

用户选择

请用户选择一个选项。
右键/全局菜单
每行定义一个操作,具体格式请参考文档。
选择的菜单
menu
选择的右键菜单或全局菜单项的值
运行效果拖动
  • operations → operations

下拉可用 Alt+M 展开(可同时按,或先 Alt 再 M,1.44.44+)。

启用筛选

选项多时打开筛选。默认 自动(选项超过10个时启用)。预先填入的词写在 筛选内容

参数

用户选择

请用户选择一个选项。
启用筛选
是否显示筛选框。仅在且使用焦点时有效。
筛选内容
预先显示的筛选内容
筛选内容
-- 选择变量 --
最后使用的筛选词
运行效果拖动
  • showFilter → filterContent
  • filterContent → filterContent

上面输入 xcq 能筛出「西城区」等,因为筛选认拼音首字母。

输入法状态:控制筛选框要不要强制开/关输入法。

窗口位置和尺寸

窗口位置:跟随鼠标、屏幕各方位,或 自定义位置

最大尺寸/位置坐标宽度,高度。数字是考虑 DPI 后的逻辑像素,百分比相对所在屏幕。例如 500,100%。自定义位置时,这里改填 left,top,right,bottom

前面加 ! 表示固定尺寸而不是上限,例如 !30%,80%(1.12.21+)。

使用上次位置:同一动作里多次弹出时,要不要留在用户拖过的地方。

窗口标识:再次运行时按标识关掉旧窗口,并在原位置打开新窗口。

焦点和关闭

自动关闭:秒数,0 为不自动关。到点时若已有预选则保存,否则取消。

不使用焦点:不抢输入焦点,只能用鼠标选。

失去焦点后关闭窗口(仅在使用焦点时有效):点到别处就关并取消。

恢复活动窗口到弹出前:选完后把焦点还回弹出前的窗口。若动作里切过别的软件,可再配合 恢复活动窗口

允许不选择任何选项时点击确定:空选也能点确定。

启用快速确认(点击选项后立即确认选择并关闭窗口):仅单选。关掉后要点「确定」才返回。

置顶显示:选择窗口是否总在最前。

取消后停止:点取消或关掉窗口后是否中止动作。默认开启。

帮助按钮内容:Markdown。语法见 MdXaml 扩展说明

字体大小 / 字体名称 / 图标大小:列表文字和图标。多个字体名用逗号分隔。

输出

  • 是否确认:是否选了选项或点了保存。
  • 选择的项(值)(单选):选中项的值。
  • 索引号(单选):从 0 起。
  • 选择的项值列表 / 索引号列表(多选)。
  • 选择的菜单:右键或全局菜单项的值。
  • 选择的完整选项:选项的原始定义;词典选项时是键。多选为列表,也可当成多行文本。
  • 选择的选项标题(单选):给人看的那一侧。
  • 筛选内容:最后用过的筛选词。

使用场景

相关链接

更新历史

  • 1.1.2 增加自动关闭;默认值可用序号。
  • 1.1.12 增加筛选。
  • 1.6.0 增加右键菜单等。
  • 1.39.16 筛选支持 ! 严格包含。
  • 20241029 完善参数说明。
  • 20241213 多选可用序号预选。
  • 20251020 全局菜单项可显示为按钮。
  • 20251121 增加 Alt+M 展开全局菜单。

更新于