在顺序转换 JavaFX 中添加时间间隔和部分并发转换
Adding time gap and partially concurrent transitions in Sequential Transition JavaFX
我想重复相同(相似模式)的 JavaFX 动画 - 重复显示一组按钮的模式,在一定持续时间后将它们从屏幕上擦除,并在一定持续时间后再次显示它们。在做了一个简短的研究之后,我了解了 SequentialTransition
,它封装了其他转换对象并按顺序执行它们(顾名思义)——在 https://docs.oracle.com/javafx/2/api/javafx/animation/SequentialTransition.html 中找到了一个很好的简单示例。不过,在使用此工具时我需要弄清楚两件事:
- 我不希望所有封装的转换按顺序发生 - 我希望几个按钮同时出现和消失,这将是一些不能同时发生的
FadeTransition
对象。
- 我想在每次转换之间添加时间间隔(例如,在按钮开始褪色之前等待 5 秒,在按钮重新出现之前等待 3 秒等)。在
SequentialTransition
内添加时间间隔的常规方法是什么(或 JavaFX 中的任何转换,因为 Thread.sleep() 似乎会阻塞事件侦听器,因此不合适)?
如有任何关于这两个问题的指点,我们将不胜感激。
关于转换的混合,您可以使用 onFinished event handler. For the time gaps you can use a PauseTransition 在顺序转换完成后立即执行并行转换。
我想重复相同(相似模式)的 JavaFX 动画 - 重复显示一组按钮的模式,在一定持续时间后将它们从屏幕上擦除,并在一定持续时间后再次显示它们。在做了一个简短的研究之后,我了解了 SequentialTransition
,它封装了其他转换对象并按顺序执行它们(顾名思义)——在 https://docs.oracle.com/javafx/2/api/javafx/animation/SequentialTransition.html 中找到了一个很好的简单示例。不过,在使用此工具时我需要弄清楚两件事:
- 我不希望所有封装的转换按顺序发生 - 我希望几个按钮同时出现和消失,这将是一些不能同时发生的
FadeTransition
对象。 - 我想在每次转换之间添加时间间隔(例如,在按钮开始褪色之前等待 5 秒,在按钮重新出现之前等待 3 秒等)。在
SequentialTransition
内添加时间间隔的常规方法是什么(或 JavaFX 中的任何转换,因为 Thread.sleep() 似乎会阻塞事件侦听器,因此不合适)?
如有任何关于这两个问题的指点,我们将不胜感激。
关于转换的混合,您可以使用 onFinished event handler. For the time gaps you can use a PauseTransition 在顺序转换完成后立即执行并行转换。