3

我正在设计一个带有 Adob​​e Flash CS6 的桌面应用程序,使用 air 3.2 for desktop(在 Flash 目标设置中)。在空中设置中,有一个高级选项卡,可以设置应用程序窗口位置的初始值。我不知道我应该如何将它设置到屏幕中间。

这是一个屏幕截图:

在此处输入图像描述

4

4 回答 4

5

不要使用这些属性,只需将代码添加到您的应用程序:

stage.nativeWindow.x = (Capabilities.screenResolutionX - this.width)*0.5;
stage.nativeWindow.y = (Capabilities.screenResolutionY - this.height)*0.5;
于 2013-02-01T06:27:35.760 回答
0

对于基于 HTML/JS 的 AIR 项目,您可以使用:

window.moveTo(Math.round((window.screen.availWidth - window.outerWidth) / 2), Math.round((window.screen.availHeight - window.outerHeight) / 2));
于 2013-10-07T16:23:11.830 回答
0
var screenBounds:Rectangle = Screen.mainScreen.bounds;
stage.nativeWindow.x = (screenBounds.width - stage.nativeWindow.width) / 2;
stage.nativeWindow.y = (screenBounds.height - stage.nativeWindow.height) / 2;

为我工作

于 2016-06-19T06:20:11.237 回答
0

如果您使用 FlashBuilder 或 WindowedApplication 的 MXML 文件,您可以在初始化处理程序中这样做。这使用从 nativeWindow 的边界读取的应用程序的初始尺寸(在 application.xml 文件中定义)。[MXML 文件内容]

<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
                       xmlns:s="library://ns.adobe.com/flex/spark" 
                       xmlns:mx="library://ns.adobe.com/flex/mx"
                       xmlns:local="*"                     
                       initialize="windowedapplication1_initializeHandler(event)"
                       >
<fx:Script>
        <![CDATA[
            protected function windowedapplication1_initializeHandler(event:FlexEvent):void
            {
                var w:int = Capabilities.screenResolutionX;
                var h:int = Capabilities.screenResolutionY;
                nativeWindow.x = (w - nativeWindow.bounds.width)*0.5;
                nativeWindow.y = (h - nativeWindow.bounds.height)*0.5;
            }

]]>
</fx:Script>
</s:WindowedApplication>
于 2019-02-28T17:55:06.880 回答