暂停而不使用计时器

时间:2013-04-23 18:51:10

标签: qt

如何在循环播放之间暂停?我确实有.wav文件,我确实想连续播放,但我想在每次播放之间暂停一个X ms。我知道我可以编辑.wav文件并在其末尾添加“quiet”,但我想知道它是否可以通过编程方式完成,而无需使用计时器。

1 个答案:

答案 0 :(得分:1)

您肯定希望使用singleShot QTimer在Qt中暂停。 Qt中还有一些其他机制在内部使用QTimer。一些替代方案可能会使它更漂亮,但通常是在更大的框架和不同的用例。

可能适合您应用的一些替代方案包括:

您可以开始使用QPauseAnimation的连续动画,内部使用某种QTimer

如果您经常在循环或QThread内查看某些内容,则可以轮询QTime::currentTime()。您也可以使用QTime::elapsed()执行相同的轮询。

如果您不介意在睡眠期间挂起GUI,您可以#include "windows.h"或适用于您的平台的相应库并命令sleep

你可以设置一个QStateMachine,并在你的视频停止和你想要进行下一个动作或者有其他东西显示或启动之间内置过渡动画/计时器。

希望有所帮助。祝你好运。