需要在 Flash CS3 AS3 中创建暂停/恢复切换按钮

Posted

技术标签:

【中文标题】需要在 Flash CS3 AS3 中创建暂停/恢复切换按钮【英文标题】:Need to create a pause/resume toggle button in Flash CS3 AS3 【发布时间】:2014-01-26 23:54:53 【问题描述】:

好的,我已经看到很多关于如何编写暂停/恢复按钮的问题和答案,但没有一个适合我的特定需求。首先让我解释一下我有什么:

我为我的工作制作了一个教程视频。它由屏幕截图和声音组成。我有一个前进按钮可以跳到下一部分(通常是下一个音频文件的开头),还有一个后退按钮可以跳到上一部分。但是我需要一个暂停按钮。

现在让我解释一下我是如何构建它的:

我以 1fps 的速度制作电影。我有一个音频层,一个屏幕截图层,一个每个按钮的层,以及用于突出屏幕截图中的内容的各种其他层。在音频层上,我将音频文件放在舞台上,然后拖出帧数,直到整个音频文件可以不间断地播放。因此,如果音频是 10 秒长,它会跨越 10 帧。然后我可以将我的屏幕截图放在它自己的图层上并执行相同的操作,以便图像显示与音频相同的时间长度。当帧结束时,它会自动跳到下一帧并继续直到结束。由于音频在舞台上,因此观众无需执行任何操作即可播放音频。

在查看了许多教程之后,似乎大多数人使用代码来播放音频而不是将其放在舞台上。我没那么熟练。

所以我的问题是,在我目前的设置下,如何制作一个切换按钮,基本上显示“如果正在播放音频,单击时停止整个节目 - 如果没有播放音频,单击时从最后一个位置恢复显示“?

如果您能提供帮助,非常感谢!另外,这是我第一次问这样的技术问题,如果您需要任何其他具体细节,请告诉我。

【问题讨论】:

【参考方案1】:
    首先确保时间线上的所有音频都设置为“流式传输”。到 执行此操作单击音频所在的框架,找到声音 面板,将其从事件更改为流。这将确保当 时间线停止音频停止并恢复时 播放时间线。 至于按钮,只需在时间轴上创建一个调用 stop() 的按钮和一个调用 play() 的按钮。这将在任何地方停止时间线并继续播放。
var myTimeline:MovieClip;//link to the movieclip where your timeline animation lies
var btnPause:SimpleButton;//link to your pause button
btnPause.addEventListener(MouseEvent.CLICK,function(event:MouseEvent):void
    myTimeline.stop();
);
var btnResume:SimpleButton;//link to your resume button
btnResume.addEventListener(MouseEvent.CLICK,function(event:MouseEvent):void
    myTimeline.play();
);

【讨论】:

太棒了,我认为我们正朝着正确的方向前进。不过有几个问题:至于您在示例代码中引用的影片剪辑,我没有影片剪辑。我只有一个带有图像的图层,并没有真正的“电影”。所以音频正在播放,同时图像显示,如果音频开始谈论新事物,图像就会改变。所以 myTimeline 参考让我很困惑,我应该改用什么? 如果 AS3 与动画在同一个时间轴中(在同一个影片剪辑中),则设置 var myTimeline:MovieClip = this;因为这是你的时间表。 不是。我有一个定义了所有内容的“共享操作”层,然后按钮层上只有 AS3。因此,例如,我有一个带有此代码的 Next 按钮: Next1.addEventListener(MouseEvent.CLICK,Nclick1);带有此代码的后退按钮:Back1.addEventListener(MouseEvent.CLICK,Bclick1);然后在共享动作层我有://在第一帧停止播放 stop();函数 Nclick1(event:MouseEvent):void SoundMixer.stopAll(); gotoAndPlay(25); 函数 Bclick1(事件:MouseEvent):void SoundMixer.stopAll(); gotoAndPlay(2); 抱歉,我不知道如何让这些 cmets 中的代码看起来不错! 如果您认为它不像电影剪辑,也许它会有所帮助,但更像是这笔交易是带有旁白的幻灯片。我正在尝试从头开始构建另一个,但定义 myTimeline 的整个过程仍然让我失望。

以上是关于需要在 Flash CS3 AS3 中创建暂停/恢复切换按钮的主要内容,如果未能解决你的问题,请参考以下文章

Flash CS3 (AS3) 为我的图形(按钮和影片剪辑)提供轮廓

Flash CS3 AS3 影片剪辑转移到其他帧

如何以不同的方式格式化不同的文本行,从在 AS3 中创建的文本字段,从 txt 文件填充文本?

如何在 AS3 中创建预加载器

如何在 Flash AS3 中通过鼠标单击暂停多个符号

Flash AS3 在特定帧上停止声音