保证动画原子性
大家好。 最近在做一款软件, 其中使用到了 Qt / QML 的动画。 大致效果如下:
StateA: properties;
StateB: properties;
Transitions{
from: StateA
to: StateB
revisible: true
Animations{ duration: 2000};
}
MouseClick:
{
if StateA then StateB
else if StateB then StateA
}
状态迁移时会伴随着动画的发生。 可是如果在 动画执行过程点击鼠标, 动画效果很乱。
我尝试过使用 全局 mutex, 在state enter exit,可是 这样的话会导致逻辑非常复杂, 我觉得应该有比较简单的方法可以解决。
有朋友建议动画发生过程中 屏蔽 鼠标——这样可以保证动画正常。 请问如何在动画过程中屏蔽鼠标? 或者怎么保证动画顺利执行?