使用 fscommand()
函数将消息发送到承载 Flash Player 的那个程序。fscommand()
函数有两个参数:command
和 arguments
。要把消息发送到独立的 Flash Player,必须使用预定义的命令和参量(参数)。例如,下面的动作设置独立播放器在按钮释放时将 SWF 文件缩放至整个显示器屏幕大小:
on (release) { fscommand("fullscreen", "true"); }
下表显示为了控制 SWF 文件在独立播放器(包括放映文件)中的播放,可为 fscommand()
的 command
和 arguments
参数指定的值:
命令 |
Arguments |
目的 |
---|---|---|
quit
|
无 |
关闭播放器。 |
fullscreen
|
|
指定 |
allowscale
|
|
指定 |
showmenu
|
|
指定 |
exec
|
应用程序的路径 |
在播放器内执行应用程序。 |
若要使用 fscommand()
向 Web 浏览器中的脚本撰写语言(例如 JavaScript)发送消息,您可以在 command
和 arguments
参数中传递任意两个参数。这些参数可以是字符串或表达式,它们将在用来“捕获”或处理 fscommand()
函数的 JavaScript 函数中使用。
fscommand()
函数在嵌入 SWF 文件的 HTML 页面中调用 JavaScript 函数 moviename
_DoFSCommand
,其中 moviename
是由 EMBED
标签的 NAME
属性或由 OBJECT
标签的 ID
属性指定的 Flash Player 的名称。如果为 Flash Player 指定的名称为 myMovie
,则调用的 JavaScript 函数就是 myMovie_DoFSCommand
。
fscommand()
从 HTML 页面的 SWF 文件中通过 JavaScript 打开消息框: function theMovie_DoFSCommand(command, args) { if (command == "messagebox") { alert(args); } }
如果在 HTML“发布设置”对话框中使用具有 FSCommand 模板的 Flash 发布 SWF 文件,则将自动插入此代码。该 SWF 文件的 NAME
和 ID
属性将是文件名。例如,对于文件 myMovie.fla,属性将设置为 myMovie
。(有关发布的更多信息,请参见发布。)
或者,对于 Microsoft Internet Explorer 应用程序,可直接在 <SCRIPT>
标签中附加事件处理函数,如此例中所示:
<Script Language = "JavaScript" event="FSCommand (command, args)" for= "theMovie"> ... </Script>
fscommand()
函数,如此例中所示:
on (press) { fscommand("messagebox", "This is a message box invoked from within Flash."); }
您也可以对 fscommand()
和参数使用表达式,如此例中所示:
fscommand("messagebox", "Hello, " + name + ", welcome to our website!")
fscommand()
函数可将消息发送给 Macromedia Director,Lingo 将消息解释为字符串、事件或可执行的 Lingo 代码。如果消息是字符串或事件,则必须撰写 Lingo 代码以便从 fscommand()
函数进行接收,然后在 Director 中执行动作。有关更多信息,请访问 Director 支持中心,网址为:www.macromedia.com/support/director。
在 Visual Basic、Visual C++ 和可承载 ActiveX 控件的其它程序中,fscommand()
利用可在环境的编程语言中处理的两个字符串发送 VB 事件。 有关更多信息,请使用关键字 Flash method 搜索 Flash 技术支持中心,网址为:www.macromedia.com/go/flash_support_cn。