2012-01-26 65 views
5

我正在创建一个Flash应用程序,该应用程序将以exe格式导出,并且不会在浏览器中运行。我想在舞台中添加一个退出按钮,但我不知道如何使用ActionScript 3来做到这一点。如何在Flash应用程序中创建退出按钮

我记得在ActionScript 2中使用fscommand是可能的,但它不适用于AS3。

我到处搜索,但每个人都试图关闭浏览器环境中的弹出窗口或选项卡或窗口,而不是Flash应用程序。

回答

8

为什么会使用一个.exe格式的时候,你现在可以导出AS3应用程序AIR? 但 如果仍想exe文件,我认为这会工作

import flash.system.fscommand; 

//Then you can use the following function for the button click handler: 

private function clickHandler(event:MouseEvent):void { 
     fscommand("quit"); 
} 

如果你决定尝试AIR解决方案,这是命令

import flash.desktop.NativeApplication; 
nativeApp.nativeApplication.exit(); 
+0

嗯,其实我对空气一无所知,我很着急完成我的项目,我会稍后再看看。 –

+0

无论如何,谢谢你的回答。它正在工作。 –

+0

AIR应用程序可以在Mac上运行吗?他们是否需要安装AIR,或者您是否可以通过Flash IDE进行安装? –

3

System.exit(0);应该关闭桌面应用程序?

+0

这也适用。当然,你需要'导入flash.system.System;'来使它工作。 –

+0

谢谢。 'System.exit(0)'和'fscommand(“quit”)'都可以工作。 –

3

尝试:

import flash.system.fscommand; 

function clickHandler(event:MouseEvent):void { 
fscommand("quit"); 
} 

btn.addEventListener(MouseEvent.MOUSE_DOWN, clickHandler); 
+0

谢谢你,'fscommand(“quit”);'正在工作...... –

+0

不客气:-) – AsTheWormTurns

3

它仍然是一个fscommand,但语法是不同的:

import flash.system.fscommand; 

btn.addEventListener(MouseEvent.MOUSE_DOWN, closeApp); 

function closeApp(event:MouseEvent):void { 
    fscommand("quit"); 
} 
+0

感谢您的帮助。 –

0
function exitAdobe (event:MouseEvent): void { 

NativeApplication.nativeApplication.exit(); 

} 
bt_exit.addEventListener(MouseEvent.CLICK, exitAdobe); 

//A melhor forma que encontrei... 
+1

正确设置您的代码(必须向右推四格)并尝试使用英语。 – flaviodesousa

相关问题