## 执行流程
### 任务的定义
一般描述任务的时候,都会有主任务、子任务这么一说。初始版本,先不做很复杂,我们就先实现一个个子任务。
### 步骤的定义
一个任务是由多个步骤组成的,每一个步骤执行完成,才会进行下一步。在程序中表现为,监听该步骤出现的内容“消失”。
比如:点击关闭后,关闭按钮所在的位置,就不能再匹配到该按钮了。
| 属性名 | 说明 |
| --- | --- |
| adjust | 基于坐标点进行调整,示例数据:(100,20) ,表示向右偏移100像素、向下偏移20像素 |
~~~
{
"name":"押镖图标",
"img":"../images/yabiao/yabiao.png",
"type":"must",
"try":10,
"sleep":2,
"adjust":(150,0),
"confidence": 0.85,
"region": [0, 0, 1920, 1080]
}
~~~
### 任务流程示意图
![](https://img.kancloud.cn/eb/39/eb3962466a4057f3ba26ffb88b2098be_1093x397.png)
### 子线程
增加一个子线程,用来监控键盘的事件,当满足条件后修改任务中的步骤指标(step_index)数据,实现上一步、下一步操作。