Flash的全螢幕播放設定方式
文∕趙英傑
本文旨在補充「自動輪流播放Flash的FLV視訊檔」這篇文章的讀者回應,說明全螢幕播放Flash影片的設定方法。
設定HTML的allowfullscreen全螢幕播放參數
Flash Player的全螢幕播放功能有下列兩種類型:
若要啟用全螢幕播放,HTML文件必須替Flash Player外掛程式加入 "allowfullscreen=true"(亦即:允許全螢幕播放)的參數設定。如果讀者使用Flash內建的「發佈」指令來發佈網頁,請在「發佈設定」面板的HTML設定項目的「範本」下拉式選單,選擇「僅適用於 Flash – 允許全螢幕」選項,如下圖:
若讀者使用SWFObject在網頁中嵌入Flash,請將 "allowfullscreen" 參數設定成 true,如底下的SWFObject程式片段所示:
<script type="text/javascript"> var flashvars = {}; var params = {}; params.allowfullscreen = "true"; var attributes = {}; swfobject.embedSWF("flv_player.swf", "myAlternativeContent", "550", "400", "9.0.0", false, flashvars, params, attributes); </script>
撰寫ActionScript全螢幕播放程式
FLVPlayback組件有個skin具備全螢幕播放鈕(例如:SkinOverPlayStopSeekFullVol),若選用這個skin,就不需要寫任何ActionScript程式。如果要自行撰寫程式,只要把 stage 的 displayState 屬性設定成 ‘fullScreen’ 值(或者寫成:StageDisplayState.FULL_SCREEN)即可。例如,假設舞台上有個叫做 fullscreen_btn 的按鈕,配合底下的事件處理程式:
fullscreen_btn.addEventListener(MouseEvent.CLICK, fullScreen); function fullScreen(e:MouseEvent):void { stage.displayState = StageDisplayState.FULL_SCREEN; }
如此,每當按一下此按鈕,Flash裡的視訊影片就會以全螢幕方式播放了;假如要讓整個影片內容以全螢幕方式播放,請將FLVPlayback組件的fullScreenTakeOver屬性設定成 false。範例影片中的FLVPlayback的實體名稱叫做 ‘flv’,因此上面的fullScreen函數改成:
function fullScreen(e:MouseEvent):void { stage.displayState = StageDisplayState.FULL_SCREEN; flv.fullScreenTakeOver = false; }
本文的範例檔請按此連結下載。此範例僅包含更新的 .fla, HTML和JavaScript檔,程式所需的.flv視訊和XML檔,請在「自動輪流播放Flash的FLV視訊檔」這篇文章中下載。壓縮檔裡的flv_player_1.htm是透過Flash的「發佈」指令產生的網頁,flv_player_2.htm則是用SWFObject嵌入Flash的網頁。
謝謝老師!!成功用出成果囉!!
老師您好!可以請教一下,在flash裡,如何把資存出成文字檔呢?
我需要把使用者的資料,寫成XML的格式的文字檔出來
感謝!
補充一下,我目前的需求是可以做成exe檔,這樣應該就沒有安全性的問題。
但是我還是找不到可以存出文字檔的方法。
Flash Player本身沒有提供存檔功能,但是你可以用:
Screenweaver(免費)
Zinc
等軟體來製作Flash的.exe檔,他們都提供許多額外的功能和API。這個是Screenweaver的教學文件,有提到存檔的API和示範。
have fun!
jeffrey
趙老師好久不見:eek:
我想請問如何設定防火牆的的TCP 80 port,在遠端電腦主機也能看見我本機電腦主機伺服器裡的swf或html檔呢?
舉例http://123.123.xxx.swf
我記得安裝Apache伺服器軟體之後,第一次啟用時,Windows就會警告你是否讓伺服器啟用80埠的通訊埠。只要按下「確定」它就開啟了。
或者,請搜尋一下關鍵字「開啟 windows 80 port 」就能找到相關的設定方式了。
have fun!
jeffrey
可以煩請老師直接指導開啟 windows 80 port的教學嗎?
我依照網路的教學設定開啟 windows 80 port
(開啟 windows 80 port的網路教學網址→http://briian.com/?p=4703)
設定完去網咖還是無法連上我家電腦主機伺服器裡的swf檔。
在網咖和我家之間跑來跑去好累喔:sad:
你確定是沒有開啟通訊埠的緣故嗎?我不知道你家裡是否有安裝路由器或交換機(switcher),如果有的話,請先在路由器上設定「虛擬非軍事區」,指定要對外公開的電腦IP位址,好讓其他電腦從外部連入。
have fun,
jeffrey
太感謝老師了:lol:
原來是我自己粗心大意,防火牆一般設定的不允許例外,我把它勾選了,才會一直失敗T_T
請問老師
我有場景1 and 場景2
場景1設按鈕 按下去跳至場景2
有辦法在場景1按按鈕下去以後 跳至場景2時 是全螢幕的嗎?
我使用AS2有辦法嗎?