`
lixinye0123
  • 浏览: 323422 次
  • 性别: Icon_minigender_1
  • 来自: 温州
社区版块
存档分类
最新评论

Flex程序的全屏幕显示

    博客分类:
  • Flex
阅读更多
 看到官方的一片讲解如何在Flash Player 9下全屏幕显示Flash的文章,原文地址如下:

 Exploring full-screen mode in Flash Player 9 ,照葫芦画弧,这里我只贴一下AS3的代码:


package
...{
    
import flash.display.Sprite;
    
import flash.ui.ContextMenu;
    
import flash.ui.ContextMenuItem;
    
import flash.events.ContextMenuEvent;
    
import flash.display.StageScaleMode;
    
import flash.display.StageDisplayState;
    
import flash.system.Security;
    
import flash.system.SecurityPanel;
    
import flash.system.fscommand;

    
public class FullScreen_demo extends Sprite
    
...{
        
public function FullScreen_demo()
        
...{
            
// create the context menu, remove the built-in items,
            
// and add our custom items
            var fullscreenCM:ContextMenu = new ContextMenu();
            fullscreenCM.addEventListener(ContextMenuEvent.MENU_SELECT, menuHandler);
            fullscreenCM.hideBuiltInItems();
            
            var fs:ContextMenuItem 
= new ContextMenuItem("Go Full Screen" );
            fs.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, goFullScreen);
            fullscreenCM.customItems.push( fs );
            
            var xfs:ContextMenuItem 
= new ContextMenuItem("Exit Full Screen");
            xfs.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, exitFullScreen);
            fullscreenCM.customItems.push( xfs );
            
            
// finally, attach the context menu to a movieclip
            this.contextMenu = fullscreenCM;
        }

        
        
private function goFullScreen(e:ContextMenuEvent):void...{
            
this.stage.displayState = StageDisplayState.FULL_SCREEN; //设置为全屏
        }

        
private function exitFullScreen(e:
ContextMenuEvent):void...{
            
this.stage.displayState = StageDisplayState.NORMAL;
        }

        
private function menuHandler(e:ContextMenuEvent):void...{
            
if (stage.displayState == StageDisplayState.NORMAL)
               
...{
                  e.target.customItems[
0].enabled = true;
                  e.target.customItems[
1].enabled = false;
               }

               
else
               
...{
                  e.target.customItems[
0].enabled = false;
                  e.target.customItems[
1].enabled = true;
               }

        }

    }

}

 

根据说明再修改HTML文件内容:


<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
 codebase
="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,18,0"
 width
="600"  height="400" id="fullscreen" align="middle">
<param name="allowFullScreen" value="true" />
<param name="movie" value="fullscreen.swf" />
<param name="bgcolor" value="#333333" />
<embed src="fullscreen.swf" allowFullScreen="true" bgcolor="#333333" width="600" height="400"
 name
="fullscreen" align="middle" type="application/x-shockwave-flash" 
 pluginspage
="http://www.macromedia.com/go/getflashplayer" />
</object>

 

关键是这一句:<param name="allowFullScreen" value="true" /> ,一切就绪后,运行,却弹出如下错误:

SecurityError: Error #2152: 不允许使用全屏模式。

奇怪了,怎么不行呢,google一番,也没查到具体原因,却找到另一个方法实现全屏,一个SWFObject.js脚本(地址:http://blog.deconcept.com/swfobject/),做起来也挺简单,SWF代码都不变,改一下HTML文件,内容如下:

<script type="text/javascript" src="swfobject.js"></script>
        
<style type="text/css">...
            body
            
{...}{
                background-color
: #869ca7;
            
}

        
</style>
</head>

<body>
<div id="fabchannel_base_templateContainer">You need the Flash Player version 9.0.18.60 or higher and a JavaScript enabled browser to view this site</div>
<script type="text/javascript">...
            
// <!--
            var ignoredParams = ...{src: 1, bgcolor: 1};
            
var params = String('src="FullScreen_demo.swf" menu="true" quality="high" bgcolor="#869ca7" ').split(" ");
            
var swf = new SWFObject("FullScreen_demo.swf""fabchannel_base_template""960""605""9.0.18.60""#869ca7");
            swf.addParam(
"align""middle");
            swf.addParam(
"allowFullScreen""true");
            
for(var i = 0; i < params.length; i++)
            
...{
                
var paramName = params[i].split("=")[0];
                
var paramValue = params[i].split(""")[1];
                
                
if(ignoredParams[paramName] != 1 && paramName != "")
                
...{
                    swf.addParam(paramName, paramValue);
                }

            }

            swf.write(
"fabchannel_base_templateContainer");
            
// -->
        
</script>
</body>

只要把上面红色字的改成你的swf文件就可以了,是不是很简单,现在还不明白官方的那个例子怎么不行了,希望知情者告知,谢谢。

分享到:
评论

相关推荐

    flex 控件 全屏显示

    点击空间可以在屏幕上全屏显示,效果很炫,很牛-- 点击空间可以在屏幕上全屏显示,效果很炫,很牛

    Flex 组件全屏 部分全屏的实现 代码

    Flex 组件全屏 部分全屏的实现 一般情况下,Flex全屏是指将整个舞台全屏,而不是待定的组件全屏.网上的例子也一般是指这种情况的. 下面发布一下,将特定组件全屏的代码:

    Flex 组件全屏的组件

    里面少了一个针对按下ESC键的处理,这个在使用的时候可以自己加,另外一个问题就是由于这个库是FLEX3的,所以在FLEX4.0或以上的版本(使用的spark主题)的时候,需要修改类里面的Canvas为Group或者其他的显示容器,...

    flex例子.flex源程序

    学习Flex.flex源程序,很好的啊。

    测试flex应用程序

    sfapi 可以expose flex应用程序的控件,以便测试程序通过执行js方法调用而操作flex界面控件

    FLEX2和FLEX3全屏的代码

    一.flex2的全屏代码 在仅仅使用Flex Builder2(我下载的是FLXB_2.0_Win_WWE.exe)的时候,写全屏代码竟然找不到flash.display.StageDisplayState,于是下载了Flex 2.0.1升级包(官方地址:...

    flex全屏代码 界面全屏

    flex全屏代码界面全屏flex全屏代码界面全屏

    flex 如何全屏,很大帮助呀

    flex 在运行页面时的全屏效果,可以下载看看

    flex 等待界面显示

    flex 等待界面显示

    小程序源码 FlexLayout布局 (代码+截图)

    小程序源码 FlexLayout布局 (代码+截图)小程序源码 FlexLayout布局 (代码+截图)小程序源码 FlexLayout布局 (代码+截图)小程序源码 FlexLayout布局 (代码+截图)小程序源码 FlexLayout布局 (代码+截图)小程序源码 Flex...

    微信小程序 FlexLayout布局 (源码)

    微信小程序 FlexLayout布局 (源码)微信小程序 FlexLayout布局 (源码)微信小程序 FlexLayout布局 (源码)微信小程序 FlexLayout布局 (源码)微信小程序 FlexLayout布局 (源码)微信小程序 FlexLayout布局 (源码)微信小...

    Flex应用程序开发

    这是一本入门级的Flex电子书,适合入门的朋友看!

    flex打分程序(管理系统)flex打分程序(管理系统)

    flex打分程序(管理系统)flex打分程序(管理系统)flex打分程序(管理系统)flex打分程序(管理系统)flex打分程序(管理系统)flex打分程序(管理系统)flex打分程序(管理系统)flex打分程序(管理系统)flex打分...

    selenium对flex程序的自动化测试.docx

    selenium对flex程序的自动化测试.docx

    微信小程序flex布局demo

    微信小程序flex布局demo

    微信小程序的FlexLayout布局实例.rar

    本源代码将研究学习微信小程序的FlexLayout布局实例,微信小程序界面设计实例,是一种流布局的实现例子,而不是大家熟悉的盒子式布局,据说即使需要深层的嵌套,FlexLayout布局的响应速度也不会超过1ms,可谓是非常...

    flex web 显示PDF

    在flex的web中显示pdf文件, 包含pdf转换swf的工具和java转换的类

    Flex 全屏显示 JasPine.rar

    util.as 文件中 修改goFullScreen 方法 有注释可以看到默认的时候是蒙上了一层黑色背景,测试的时候我给改成白色了

    flex聊天程序客户端

    flex聊天程序客户端flex聊天程序客户端flex聊天程序客户端

    flex iframe 支持在flash中嵌套入html jsp asp php等

    flex iframe 支持在flash中嵌套入html jsp asp php等flex iframe 支持在flash中嵌套入html jsp asp php等flex iframe 支持在flash中嵌套入html jsp asp php等flex iframe 支持在flash中嵌套入html jsp asp php等flex...

Global site tag (gtag.js) - Google Analytics