banner
李大仁博客

李大仁博客

天地虽大,但有一念向善,心存良知,虽凡夫俗子,皆可为圣贤。

在flash控件中設置使用透明背景播放影片

網頁或者在 window form 中插入 flash 影片形成動態效果是很常用的動態效果顯示方式,但是如果網頁或者 form 是分層顯示的結構,怎樣才能發 flash 的背景呢?

今天 CG 解決一個小問題,關於控制 flash 影片在容器中播放時的背景透明顯示問題,相信大家在做網頁或者做 winform 的時候肯定遇到過,大家不需要刻意去修改 flash 影片的背景為透明因為設置透明的話在 flash 控件中顯示效果是一樣的,這裡告訴大家一個方法設置 flash 容器(控件)的 Wmode 屬性即可
下面是 Wmode 的三種不同參數:

  1. Window: 默認的使用模式,也是 adobe 官方手冊中說明渲染速度最快的模式,但是這種
    模式使用的是獨立於容器的顯示方式,即窗體 window 方式,使用類似我們習慣的窗體的作為
    獨立的打開方式,因此這樣的模式下,flash 影片實質上是一個可以獨立控制的 flash 播放窗體
    ,而且默認的背景使用的是不透明,這就是為什麼容器顯示的時候是分離的狀態,這個窗體由
    操作系統管理
  2. Opaque: 這是一種與 window 對應的無窗體模式,通常接受所在 DOM 管理,WEB 中通常
    可以當一個 DIV 層來使用,使用也很靈活,不過這種模式使用的是絕對定位,一般是用嵌套
    方式來控制顯示位置,從而保證顯示位置正確,通常在 web 中使用的比較多
  3. Transparent: 這是解決問題的模式,是一種特別的顯示模式,即背景透明,而且是無視
    原本的 flash 動畫的背景設置,用於在多層顯示效果中使用,不過這種模式官方說明是渲染
    速度最慢的模式,是一種特殊的 Opaque 模式,而且要求的 flash 版本較高,大家使用的時
    候要注意。

使用方法:
WinForm:直接在 AXShockWaveFile 控件的 Wmode 屬性中設置相應的模式字符串即可,
如果大家用的 VC++ 的話,建議使用控件的 setWmode 方法即可,所有的編程語言都支持
此方法

web:如果使用的是 object 顯示方法的話可以再顯示參數中添加一個參數即可,參數如下

如果使用的embed方法的話,可以考慮在調用的參數中增加wmode參數即可在調用

兩種方法代碼如下

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。