Adobe Air:启动本地窗口隐藏。

5
我要如何打开一个隐藏的新窗口?(注意visible="false"
<s:Window xmlns:fx="http://ns.adobe.com/mxml/2009" 
      xmlns:s="library://ns.adobe.com/flex/spark" 
      xmlns:mx="library://ns.adobe.com/flex/mx" 
      showStatusBar="false"
      resizable="false" 
      visible="false">

如果我这样声明一个窗口,然后调用this.open(false);,窗口将会快速打开,然后隐藏,并在实际显示时重新显示,这很丑陋。我想这样做是为了能够在显示窗口之前加载内容并适应窗口大小。

那只是使内容不可见。这是一个本地窗口。 - forivall
我能够使用WindowedApplication使其工作,当我开始使用Parsley框架进行重写时。然而,这是在我最近完成的合作工作(实习)中完成的,因此我不再可以访问该代码。我没有解决原始问题,即仅使用窗口进行工作。我计划在我的个人项目中不使用Air或任何基于Flash的产品,因此我不认为我会回到这个问题。 - forivall
2个回答

3

我可以在应用程序的preinitialize事件处理程序中将其设置为不可见(visible=false),并在handleOnInvoke事件处理程序中将其设置为可见。


这似乎对我不起作用。使用AIR 3.6。在应用程序描述文件中,visible标签为false。 - 1.21 gigawatts

2
如果您不使用systemChrome,则可以将初始大小和最小大小设置为零,否则系统标题栏将可见。SystemChrome还禁止使用透明度,因此我看不到使用它来创建隐藏窗口的方法。

1
怎么会这样?在Flex3中它可行。以下情况:我在我的AIR描述文件中将visible设置为false,以便原生窗口最初是不可见的。然后在我的应用程序设置中,我从Flash/AIR本地共享对象中调用窗口大小和位置,并将这些值设置为我的窗口,之后通过调用nativeWindow.activate()使窗口可见。然而,在AIR描述文件中将visible设置为false似乎在Flex 4中没有效果。它总是使窗口可见,无论我将其设置为什么。有什么想法吗? - BadmintonCat
此设置仅在窗口创建后立即使其可见,这也让我感到困惑。我没有找到明确的方法来默认隐藏窗口,因此将大小调整为零大小是我能够得到的最好的方法。 - alxx
我正在使用系统自带的Chrome浏览器,并希望保持这种状态。 - forivall

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接