Adobe Air:Windows应用程序

时间:2014-11-01 06:08:51

标签: actionscript-3 flash flex air flex4.5

我是初学者。我使用Adobe Air Flash Builder开发了一个桌面应用程序。我正在使用WindowedApplication容器作为Flex应用程序的入口点。

问题: 我有一个按钮,其事件处理程序使用addElement和NavigatorContent属性将我重定向到一个新窗口。这是处理程序:

        public function startstudy_clickHandler(event:MouseEvent):void
        {
            var dTracker:Study = new Study();
            this.addElement(dTracker);
        }

这是NavigatorContent代码:

        <s:NavigatorContent width="100%" height="100%" label="PRACTICE" icon="@Embed(source='assets/image.png')" toolTip="PRACTICE" id="navprac">

发生的事情是,当我被重定向到新窗口时,新窗口的尺寸与WindowedApplication的尺寸不同。事实上,无论我是否在单击按钮之前调整WindowedApplication的大小,新窗口每次都具有相同的精确尺寸。我需要新窗口与调用(WindowedApplication)窗口的大小相同。

有解决方法吗?如果没有,那么如何让所有窗口从一开始就具有相同的大小,即禁用它们的大小调整并将所有窗口设置为屏幕大小。

1 个答案:

答案 0 :(得分:2)

根据您上面的评论判断,Study的类型为Window,在这种情况下,当您调用new Study()时,您正在创建一个新窗口。此窗口与WindowedApplication开始时创建的第一个窗口具有完全不同的高度和宽度集。

要解决此问题,您可以明确说明这些属性:

var dTracker:Study = new Study();
dTracker.height = this.height;
dTracker.width = this.width;
dTracker.x = this.x;
dTracker.y = this.y;

或者您可以将Study从窗口更改为GroupPanel,然后将其添加到当前窗口而不是创建新窗口