ActionScript 3.0的退出按钮?

时间:2011-07-25 12:21:42

标签: actionscript-3

我正在尝试制作一个带有“退出”按钮的Flash视频,当用户点击它时会关闭该电影。最初我有这个代码:

fscommand("quit"); 

但是每当我将这部电影作为EXE文件发布时(它将成为自动运行CD中的目录索引页面,所以我认为它必须是一个EXE),该代码会导致电影自动关闭。我会点击EXE文件,屏幕会闪烁然后关闭。当我从该按钮的图层的动作中取出该代码时,它工作正常(没有关闭)但现在我没有退出命令。除非我做错了什么?

那么AS3.0还有另一种命令来创建“退出”按钮吗?或者我在这段代码中缺少一些东西,比如我应该添加其他东西吗?

3 个答案:

答案 0 :(得分:1)

在as3中,您必须使用如下事件和事件处理程序:

import flash.events.MouseEvent;

exitButton_mc.addEventListener(MouseEvent.CLICK, function()
{
        fscommand("quit");
}

在as2中,您可以这样编码:

exitButton_mc.onRelease = function()
{
    fscommand("quit");
}

其中,exitButton_mc是您的按钮,您已在属性面板中将其作为实例名称。如果你编写代码fscommand("quit");,在时间轴本身,它将被执行并关闭EXE。

在旁注中,我读了一些内容,其中Flash中代码的最佳方法是保留顶部名为_actions_labels的图层,这些图层不包含任何UI元素,但所有as代码将位于_actions图层中,关键帧的标签将保留在_labels

答案 1 :(得分:0)

如果您将此操作直接放在时间轴上,它将立即触发,因此当您的exe文件启动时,它将看到退出操作并关闭。

你必须为按钮点击创建一个事件监听器,然后像这样放置fscommand动作:

myCloseButton.addEventListener(MouseEvent.CLICK, CloseApp);

function CloseApp(e:MouseEvent) {
    fscommand("quit");
}

答案 2 :(得分:0)

import flash.events.MouseEvent;
import flash.system.fscommand;

exit_button.addEventListener(MouseEvent.CLICK, CloseApp);

function CloseApp(e:MouseEvent) {
    fscommand("quit");
}

发布您的Flash应用。 然后运行已发布的swf。 注意:在Flash中测试导出时,“退出”不起作用。它仅适用于已发布的swf文件。