状态机图(或起始图,也称为状态转换图的状态图)是一种行为,它指定实体(或对象)在其生命周期内响应事件时访问的状态序列,以及它对这些事件的响应。
清晰的状态图
![29a1ea18e9881018b456d947cbc05fe7.png](https://i-blog.csdnimg.cn/blog_migrate/9e39e9698b645145d0937a6c31b6f143.jpeg)
关键概念
State/状态
状态是对象生命期间的条件,在此期间它满足某些条件,执行某些活动或等待某些外部事件
Event/事件
事件是重要事件的规范。 对于状态机制,事件是可以触发状态转换的刺激的发生。
Transition/过渡
转换是两个状态之间的关系,指示当满足指定的一组事件和条件时,处于第一状态的对象将执行某些动作并进入第二状态。
Action
Action是可执行的,原子的(参考状态机)计算。Action可以包括操作,创建或销毁其他对象,或者将信号发送到其他对象(事件)。
创建状态机图
1、从工具栏中选择Diagram > New。
![90658e5a7c11224c2eb6927c56467559.png](https://i-blog.csdnimg.cn/blog_migrate/6688069ae73fb24c74a6d83164319854.jpeg)
2、在New Diagram窗口中,选择State Machine Diagram,然后单击Next。 您可以使用上面的搜索栏来过滤结果。
![9aff7c74b801d8bac4e79fa2344e5877.png](https://i-blog.csdnimg.cn/blog_migrate/b2862248faa1ab87dc4dcf3c72db1bb9.jpeg)
3、为该图命名,然后单击“OK”。 在本教程中,我们将命名图State Machine Diagram Tutorial。
![1cdbc81aa60ce684a4ec195561ae4176.png](https://i-blog.csdnimg.cn/blog_migrate/cff0c661bd1a81cb4803b29e2baae2c8.jpeg)
4、您现在将看到一个具有初始伪状态的空图。
5、要创建新状态,请单击初始状态,然后将资源按钮拖动到所需位置并释放。 释放按钮时,从弹出窗口中选择Transition - > State。 创建状态后,您可以更改状态名称。
![8ce5df4e404b15946eab4f54ee305f1c.png](https://i-blog.csdnimg.cn/blog_migrate/7baa3d5081d19620f52069c84a786a44.jpeg)
![f346f60d156dedc0cc64277af4bea0bf.png](https://i-blog.csdnimg.cn/blog_migrate/bcd07bded3f684f39ac2188f92fd6738.jpeg)
6、对更多状态重复步骤5。
7、您可能会看到转换未命名。 您可以通过双击转换来命名转换。 此示例将命名Available和Locked to Lock之间的转换。
![5ccc1dc5c32141063b3be6d1db28c728.png](https://i-blog.csdnimg.cn/blog_migrate/5970550e1e8a46a11690cd5d6de854f6.jpeg)
8、创建所有状态后,您可能需要设置更多转换。 您可以通过选择Transition,单击并按住开始状态,然后拖动到目标状态(在此示例中为Available)并释放来执行此操作。 不要忘记命名过渡。
![b021fd17fb85f0faa5aa8f594e277b93.png](https://i-blog.csdnimg.cn/blog_migrate/b5fec4aa9c9cfe233c1a7dc9899a7228.jpeg)
9、完成图表后,您需要看到这样的图表:
![9ea29e92ecbccc8cacfcf1fb09daf457.png](https://i-blog.csdnimg.cn/blog_migrate/6f1e3ae1850c3bc36652c303aa76f049.jpeg)
点击“了解更多”下载产品最新试用版
↓↓↓