首页 文章

VBA PowerPoint 2007 - 如何在特定动画结束后触发幻灯片更改?

提问于
浏览
0

我正在研究 PowerPoint 中创建的游戏 . 我有一个归因于图像的退出动画,在特定幻灯片上(例如:第6张)需要7秒钟才能完成 . 这部分很简单,我没有VBA就完成了 . 现在我试图在这个动画结束后执行以下代码:

With SlideShowWindows(1).View
    .GotoSlide 17, msoFalse
End With

这就像倒计时一样,将用户发送到“Game Over”幻灯片 . 我已经尝试了多个解决这个问题的方法,例如应用具有特定秒数,睡眠或延迟的DoEvents循环,但其中一些只是使我的演示文稿崩溃或使其无响应(这使得所有游戏都无用) .

有没有办法 "catch" the end of an animation in PowerPoint 所以它可以触发幻灯片更改或任何其他代码行?

谢谢!

1 回答

  • 0
    • 这不是主要问题的答案,但我找到了一个针对我的案例的解决方法 -

    在我的情况下,问题是每个幻灯片或“级别”都有一个倒计时,导致在特定时间后“游戏结束”(X时间后自动前进幻灯片) .

    最初,我的幻灯片设计是这样设计的,所以它需要一个定时器/动画结束触发器才能进入演示结束时放置的“Game Over”幻灯片:

    The initial order of slides

    但是,我发现幻灯片的另一个定位不需要额外的VBA代码,只有我附加到主要问题的那个 . 我已经在每个级别之后放置了“游戏结束”的副本,因此只有通过红色幻灯片才能完成您可以逐步完成的级别 . 在每个中间的红色幻灯片上,我放置了一个看不见的超链接,最后的“游戏结束”幻灯片实际上是黑屏:

    My solution without using extra VBA

    *(箭头说明:绿色箭头表示水平条件已完成;红色箭头表示失败)

相关问题