fscommand
()
,可方便 SWF 文件與其容器之間的通信。函數 | 定義方 | ||
---|---|---|---|
fscommand(command:String, args:String = ""):void
使 SWF 文件能夠與 Flash Player 或承載 Flash Player 的程序(如 Web 瀏覽器)進行通訊。
|
flash.system |
fscommand | () | 函數 |
public function fscommand(command:String, args:String = ""):void
語言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
使 SWF 文件能夠與 Flash Player 或承載 Flash Player 的程序(如 Web 瀏覽器)進行通訊。 還可以使用
函數將消息傳遞給 Director,或是傳遞給 Visual Basic、Visual C++ 和其它可承載 ActiveX 控件的程序。
fscommand
()
函數使 SWF 文件與 Web 頁中的腳本能進行通訊。 不過,腳本訪問是由 Web 頁的 fscommand
()allowScriptAccess
設置控制的。 (您可以在嵌入 SWF 文件的 HTML 代碼中設置此屬性,例如,在 Internet Explorer 的 PARAM
標簽或 Netscape 的 EMBED
標簽中。) 當 allowScriptAccess
設置為 "never"
時,SWF 文件無法訪問 Web 頁腳本。 對于 Flash Player 7 及更高版本,當 allowScriptAccess
設置為 "always"
時,SWF 文件始終可以訪問 Web 頁腳本。 當 allowScriptAccess
設置為 "sameDomain"
時,只允許從與該 Web 頁位于同一域中的 SWF 文件進行腳本訪問;對于以前版本的 Flash Player,始終允許腳本訪問。 如果在 HTML 頁中未指定 allowScriptAccess
,則默認情況下,對于第 8 版及更高版本的 SWF 文件,該屬性設置為 "sameDomain"
;對于第 7 版及更低版本的 SWF 文件,設置為 "always"
。
可以在包含 SWF 內容的 HTML 頁中設置 object
和 embed
標簽的 allowNetworking
參數,防止 SWF 文件使用此方法。
fscommand
()
來指示 Flash Player 進入全屏模式并且不允許縮放。 然后使用 draw()
將一個橙色框添加到舞臺上。 在 draw()
中,指示 Flash Player 使用對 fscommand
().
的另一個調用來退出,將 click
事件偵聽器以名稱 clickHandler()
添加進來,它對應于 click
事件。
注意:此示例應在獨立的 Flash Player 中執行,而不是在 Web 瀏覽器中執行。
package { import flash.display.Sprite; import flash.text.TextField; import flash.system.fscommand; import flash.events.MouseEvent; public class FSCommandExample extends Sprite { private var bgColor:uint = 0xFFCC00; private var size:uint = 100; public function FSCommandExample() { fscommand("fullscreen", "true"); fscommand("allowscale", "false"); draw(); } private function clickHandler(event:MouseEvent):void { fscommand("quit"); trace("clickHandler"); } private function draw():void { var child:Sprite = new Sprite(); child.graphics.beginFill(bgColor); child.graphics.drawRect(0, 0, size, size); child.graphics.endFill(); child.buttonMode = true; addEventListener(MouseEvent.CLICK, clickHandler); var label:TextField = new TextField(); label.text = "quit"; label.selectable = false; label.mouseEnabled = false; child.addChild(label); addChild(child); } } }
1]全屏播放指令:
fscommand("fullscreen","true");
效果:flashplayer播放器將以全屏方式進行影片播放。按鍵盤上的Esc鍵可跳轉回窗口狀態。
[2]屏蔽右鍵菜單指令:
fscommand("showmenu","false");
效果:當觀眾在flashplayer窗口中單擊鼠標右鍵時,將不會出現快捷菜單。
[3]禁止影片縮放:
fscommand("allowscale","false");
效果:當影片中應用位圖時,如果被放大或拉伸顯示,將會出現圖象模糊或鋸齒,為了避免這些影響視覺的現象,使用此指令可以禁止影片尺寸被改變。
[4]使鍵盤出入無效的指令:
fscommand("trapallkeys","true");
效果:此指令用于鎖定鍵盤輸入,使所有設定的快捷鍵都失效,flashplayer播放器此時不識別任何鍵盤輸入信號。(但注意:無法禁止Ctrl+Alt+Del三鍵組合)
[5]調用可執行文件指令:
fscommand("exec","command/程序名");
效果:直接打開一個可執行文件,command/ 是一定要的,就是說EXE文件要放在這個目錄下
[6]關閉播放器指令:
fscommand("quit");
效果:結束放映,播放器窗口自動關閉,此ACTION適合添加到影片的最后一貞,當然也可以放到一個按鈕上來實現“終止影片播放”功能。