跳到主要内容

全局事件

全局事件会在某件事发生时运行脚本,无论哪个程序在前台。全局事件共有 13 个,而且始终是这 13 个:您可以设置每一个、打开或关闭它,但永远不能添加或删除。与操作不同,全局事件不属于任何应用程序组。

备注

高级模式。 全局事件 页面位于导航的 引擎 部分,配置窗口只在高级模式下显示该部分。

设置事件​

Input.Observer简单高级
自动化
操作
文本扩展
代码片段
录制器
沙盒
应用程序组
忽略组
手势
引擎
全局事件
排除区域
脚本
插件
设置
常规
外观
配置方案
控制台
安全
帮助
关于
全局事件
无论前台是哪个应用,引擎都可以响应的 13 种事件
鼠标和滚轮
事件脚本触发时机
中键步骤,1 步按下和释放
右键未设置仅按下
滚轮 — 垂直未设置每个刻度
启用此事件
编辑脚本 →
拦截输入
运行方式
步骤脚本
完成
  1. 找到该事件所在的行。打开其开关 ① 以启用它。
  2. 单击 设置 →(如果已有脚本,则为 编辑脚本 →)②。该行会就地展开;一次只能展开一行。
  3. 对于鼠标按键或滚轮,选择是否 拦截输入 ③(拦截输入)。
  4. 在 运行方式 ④ 下,选择 步骤 或 脚本(当常规设置中打开了 AutoHotkey 时还可选择 AutoHotkey),并编写它要执行的内容(操作)。
  5. 单击 完成,然后保存。

该行的中间一列会汇总脚本,例如 步骤,3 步 或 未设置。已打开但未设置任何内容的事件会将该摘要显示为警告:它不会运行任何内容。导航标记会统计已启用的事件数。

13 个事件​

事件卡片触发时机
左键、中键、右键、侧键 1、侧键 2鼠标和滚轮按键按下时,以及松开时再触发一次(按下和释放)。对于绘制按钮,只在按下时触发(仅按下)。
滚轮 — 垂直鼠标和滚轮滚轮每转动一个刻度(每个刻度)。
滚轮 — 水平鼠标和滚轮倾斜滚轮或横向滚动每一个刻度(每个刻度)。
绘制按钮已释放手势结果开始手势的绘制按钮被松开时(每次捕获后)。
无匹配手势结果绘制的手势没有运行任何操作时(手势结束后)。
配置已加载系统和生命周期引擎启动时,以及每次保存或 重新加载配置 后再次触发(启动、保存和重新加载时)。
引擎正在关闭系统和生命周期引擎退出时(超时时提示)。
添加或移除了硬件系统和生命周期插入或移除设备时(仅限实际接入)。
前台窗口已更改系统和生命周期每次有另一个窗口切换到前台时(禁用时跳过)。

脚本可以使用 Context 内置函数了解是什么触发了它:例如鼠标按键是按下还是松开,以及涉及哪个按键和窗口(内置函数)。

鼠标按键​

无论指针在何处,鼠标按键事件都会在该按键每次按下时触发:在被忽略的程序上、在排除区域内,以及在手势期间(手势期间按下的按键同时也算作手势修饰键)。对于 Input.Observer 自己的脚本发送的单击,它永远不会触发。

对于同时也是绘制按钮的按键(常规,绘制按钮),该事件只在按键按下时触发;该行会显示 仅按下,并注明此按键用于绘制手势。按下仍会照常开始手势。要响应松开,请使用 绘制按钮已释放。

当 Windows 交换了鼠标按键时,按键名称以 Windows 为准:右键 是打开上下文菜单的那个按键。

滚轮​

滚轮事件会在每个刻度触发,无论指针下方是什么程序,在手势期间也会触发。在覆盖该滚轮的排除区域内不会触发。

同一滚轮事件的脚本按顺序一次运行一个。如果刻度到达的速度快于脚本完成的速度,最多 8 个会排队等候;超出的刻度会被丢弃。

刻度之间的最小间隔(高级模式,位于展开的行中;默认为 0)设置两个运行脚本的刻度之间的最短时间。0 表示每个刻度都运行。设置了间隔后,在上一个被接受的刻度之后过早到达的刻度会被丢弃,而不会排队。垂直滚轮和水平滚轮各有自己的间隔。同样的两个值也以 滚轮节流 的形式出现在 常规 页面上;更改其中一个会同时更改另一个。

拦截输入​

五个鼠标按键和两个滚轮可以 拦截输入:单击或滚动永远不会传到任何程序,应该发生的任何替代行为都由脚本负责。被拦截的按下也会拦截其松开。

  • 绘制按钮无法被拦截,因为其按下必须始终传给手势捕获。该开关不可用,并会说明原因。即使配置文件将其打开,引擎也会在加载时将其关闭,并且该行会显示警告,直到您也在这里将其关闭。
  • 允许在没有脚本的情况下拦截,但该行会警告您:单击或滚动会直接消失。
  • 拦截设置了最小间隔的滚轮:间隔内的刻度会被拦截 并且 丢弃。它既不会滚动,也不会运行脚本。该行也会对此发出警告。

手势结果​

绘制按钮已释放 在其按下开始了手势的绘制按钮被松开时触发,无论发生了什么:手势运行了操作、没有匹配任何内容、结果只是普通单击并被传递,或者是为训练而绘制的。如果按下从未开始手势(被忽略的程序、排除区域、按住了忽略的修饰键),或者手势在松开之前就已结束(取消超时),则不会触发。

无匹配 在您绘制了手势(至少移动了最小手势移动距离),但在窗口的应用程序组和全局组中都没有操作与之匹配时触发。对于普通单击,或在训练手势期间,它不会触发。

系统和生命周期事件​

  • 配置已加载 在引擎启动时运行。如果超过 启动和关闭等待时间(脚本 页面;默认为 10 秒)后它仍在运行,系统会询问您是否继续等待。每次从配置窗口保存以及每次 重新加载配置 后,在停止仍在运行的脚本之后,它都会再次运行;这次运行没有时间限制,也不会提示,并且在引擎被禁用期间会被跳过。
  • 引擎正在关闭 在引擎退出时运行,重新加载时绝不运行。如果超过 启动和关闭等待时间 后它仍在运行,系统会询问您是继续等待还是让引擎退出。它绝不会在未询问的情况下被中断。
  • 添加或移除了硬件 在设备实际接入或移除时触发,而不是在 Windows 期间发送的例行设备通知时触发。引擎被禁用期间会被跳过。
  • 前台窗口已更改 在每次有不同的窗口切换到前台时触发。引擎被禁用期间会被跳过。
注意

显示窗口(例如消息框)的 前台窗口已更改 脚本会将该窗口置于前台,从而再次触发该事件,如此反复。如果发生这种情况,请按停止所有操作热键(常规 页面):它会停止所有脚本,并关闭输入处理和此事件,直到您从托盘菜单中选择 重新加载配置。

全局事件不触发的情况​

  • 引擎从托盘被禁用期间,或因设置了 获得焦点时暂停所有功能 的窗口获得焦点而暂停期间(忽略组)。配置已加载 在启动时仍会运行。
  • 在安全模式下,此时不会运行任何已配置的脚本。
  • 对于 Input.Observer 自己的脚本发送的输入。

忽略组、应用程序组和配置方案不影响全局事件。