最近学习使用状态机事件结构
但是遇到点问题
举个简单例子,说明下我遇到的问题
前面板有两个按钮,按下1按钮灯亮,按下2按钮灯灭
因此将程序分为两个条件
分别为灯亮 和 灯灭
灯亮条件结构中有个事件结构,就是当1按钮按下灯亮。
灯灭条件结构中也有个事件结构,是当2按钮按下灯灭。
程序按照先按1,再按2。这样运行没有错
但是先按2,程序界面就被锁死
当我将事件结构中锁定屏幕去掉后,程序就不会被锁死
换句话说,其他条件中的事件结构被相应,但没有执行
但是逻辑上来说,这不符合实际,因为没有执行的条件,事件结构如何能够相应
这是BUG还是我事件结构的原理没搞清楚?
请大家帮忙解答
很简单,因为你初始状态定义为灯亮,所以只能执行先执行CASE结构中的真条件,所以你点先点灯灭,肯定不行的,因为在CASE结构的假分支里,不可能执行的
一周热门 更多>