【问题标题】:AS3 Fullscreen hide extra spaceAS3 全屏隐藏额外空间
【发布时间】:2013-11-21 01:27:18
【问题描述】:

我有一个 800px600px 的 Flash 应用程序,它有一个全屏按钮。全屏时,显示器的高度是固定的,但两侧有很多“溢出”或“额外空间”。

有没有办法隐藏这个额外的空间,除了在电影的“窗口”上添加一个电影剪辑?

(黑色的空间是电影区域,我想隐藏该区域左右的所有内容。)

编辑:我想要的不是改变舞台/工作区的位置/大小,而是得到一些隐藏在假定窗口(800x600)之外发生的任何事情的东西。类似于“面具”的东西,仅显示该广场上正在发生的事情。

【问题讨论】:

    标签: actionscript-3 flash overflow fullscreen


    【解决方案1】:

    查看舞台的fullScreenSourceRect 属性。这会将舞台剪辑为您想要在全屏视图中显示的内容。不过,它可能看起来像素化,具体取决于源矩形有多小。

    http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/Stage.html#fullScreenSourceRect

    【讨论】:

    • 我似乎无法使用它来实现我想要的。我能够拉伸“区域”,但不能拉伸电影的比例。它仍然具有相同的 800*600 比例,只是缩小或缩小。
    【解决方案2】:

    不太明白你的问题,但看看它是否对你有帮助:

    如果你使用Event.RESIZE,你可以改变x和y屏幕flash中物体的大小和位置,所以:

    stage.align = StageAlign.TOP_LEFT;
    stage.scaleMode = StageScaleMode.NO_SCALE;
    stage.dispatchEvent(new Event(Event.RESIZE));
    stage.addEventListener(Event.RESIZE, alterarPosicao);
    
    function alterarPosicao(e:Event):void {
        fundo_escuro.width = stage.stageWidth;
        fundo_escuro.height = stage.stageHeight;
    }
    

    因此,无论项目的分辨率如何,对象都与舞台对齐。

    拥抱!

    【讨论】:

    • 嘿,我喜欢那个自定义函数名称。谢谢。 :P
    【解决方案3】:

    我最终解决了这个问题,只是在舞台周围画了一个巨大的黄色(与背景颜色相同)正方形,并在中间留出一个空白区域供实际应用程序显示。

    这可能是一个有点“愚蠢”的解决方案,但它完成了工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-15
      • 2016-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-10
      • 2019-12-26
      • 1970-01-01
      相关资源
      最近更新 更多