打印

[FLEX] 关于在flayer中打开swf自动全屏的问题?

请教大家,我现在想flash一载入,自动全屏,不需要用户点击,如何在application中的 creationComplete  中调用这个fullScreen呢?
,我不知道fullScreen中参数该写什么?
比如点击button后实现全屏 <mx:Button id="mybtn" click="fullScreen(event)" x="216" label="aaa" y="211"></mx:Button>
import flash.display.StageDisplayState;
                     private function fullScreen(event:MouseEvent):void{   
                            if (stage.displayState == StageDisplayState.FULL_SCREEN) {  
                                mybtn.label = "全屏模式";  
                                stage.displayState = StageDisplayState.NORMAL;  
                            }  
                            else{  
                                mybtn.label = "返回全屏";  
                                stage.displayState = StageDisplayState.FULL_SCREEN;
                            }      
                       }
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="callLater(fullScreen,[new MouseEvent(MouseEvent.CLICK)])
">
       <mx:Panel width="100%" height="100%" >
              <mx:Button label="全屏模式" id="mybtn" click="fullScreen(event)" />
              <mx:TextArea id="ta" width="100%" height="90%"/>
       </mx:Panel>
       <mx:Script>
              <![CDATA[
              import flash.display.StageDisplayState;
              import flash.events.MouseEvent;
              import flash.display.Sprite;
              private function fullScreen(event:MouseEvent):void
              {
              if (stage.displayState == StageDisplayState.FULL_SCREEN)
                       {  
                  mybtn.label = "全屏模式";  
                  stage.displayState = StageDisplayState.NORMAL;  
              }  
             else
                      {   
                  mybtn.label = "返回全屏";  
                  stage.displayState = StageDisplayState.FULL_SCREEN;
                              
             }
                     
              }
              
              ]]>
       </mx:Script>
</mx:Application>

creationComplete事件直接调用fullscreen方法会出现null对象异常,所以用了callLater方法,另外,也可以通过callLater(mybtn.dispatchEvent,[new MouseEvent(MouseEvent.CLICK)])这样的方式来派发按钮的click事件

[ 本帖最后由 truefrog 于 2008-3-7 13:21 编辑 ]
fscommand吧
请用fscommand如何实现呢?

TOP

还在为头像烦恼?还在为不能关注好友动态烦忧?快来蓝色理想家园吧!
fscommand那是as2以前的用法吧,as3不能这样用吧

TOP

fscommand("fullscreen","true")

TOP

as3.0在 关于全屏 模式 有明确说明

1 需要 必须通过 用户 的鼠标或者键盘事件触发
2 全屏模式下 所有键盘事件会被屏蔽 除了 ESC FULLSCREEN

于是 如果你需要 使用到全屏模式 那么  只能做的好像看起来 是自动的
比如你打开以后需要别人点一个 ENTER  别人点了  全屏了 。。。(多傻差的办法啊,当年也被我天才的想到用来做 吓人的 蓝屏)

TOP

二楼的方法好像行不通啊,试了几次都没用啊

TOP

fscommand () 函数

public function fscommand(command:String, args:String = ""):void

语言版本 :  ActionScript 3.0
Player 版本 :  Flash Player 9



命令 参数(参量) 目的
quit 无 关闭播放器。
fullscreen true 或 false 指定 true 可将 Flash Player 设置为全屏模式。 指定 false 可将播放器返回到标准菜单视图。
allowscale true 或 false 指定 false 可设置播放器始终按 SWF 文件的原始大小绘制 SWF 文件,从不进行缩放。 指定 true 会强制将 SWF 文件缩放到播放器的 100% 大小。
showmenu true 或 false 指定 true 可启用整个上下文菜单项集合。 指定 false 将隐藏除“关于 Flash Player”和“设置”外的所有上下文菜单项。
exec 指向应用程序的路径  在放映文件内执行应用程序。
trapallkeys true 或 false 指定 true 可将所有按键事件(包括快捷键)发送到 Flash Player 中的 onClipEvent(keyDown/keyUp) 处理函数。  


一群高手不看帮助?
直接
复制内容到剪贴板
代码:
fscommand("fullscreen","true");
就行了

TOP

6楼已经给答案了

TOP

都说了,让Flex页面自动全屏,fscommand("fullscreen","true")放creationComplete试了也没用

TOP

fscommand("fullscreen","true")

没用~

TOP

fscommand () 函数
public function fscommand(command:String, args:String = ""):void

语言版本 :  ActionScript 3.0
Player 版本 :  Flash Player 9

使 SWF 文件能够与 Flash Player 或承载 Flash Player 的程序(如 Web 浏览器)进行通讯。
fullscreen true 或 false 指定 true 可将 Flash Player 设置为全屏模式。 指定 false 可将播放器返回到标准菜单视图。
刚看的帮助 谢谢这个帖子。我也找到stage类去了,然后发现有点不好用。现在我来试一试

TOP

挺好的。好用。

TOP

9楼的,fscommand的全屏只能用在单独运行的swf里,其他容器内播放是没用的,帮助到是看了,想必你看的还不够仔细。。7楼说的没错。。。

TOP

html当作容器的swf要想全屏,要么是通过事件激发的stage类的全屏方法。要么就是js的window.open。。

要想在全屏下输入文字。对不起。。目前只有js方法。。。

TOP