我正在制作一个桌面应用程序,并且正在探索使用应用程序的不同方式。
当我选择制作一个空中应用程序时,它会自动使用WindowApplication但如果我想在我的应用程序中使用多个窗口,那么我需要使用Application代替。我试图将WindowApplication嵌套在Application中,这样我就可以有多个窗口(通过Application -> new Window())并在后台有一个无边框的透明程序。当我嵌套WindowApplication时,它可以工作,但是当我单击WindowApplication(运行调试后)时,它会抛出一个错误:“参数错误:错误 #2025:提供的 DisplayObject 必须是调用者的孩子”。
这是我使用的一些代码。我正在使用 Air 2.5 和 Flash Builder 4。(xml 文件是默认的)。
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
applicationComplete="main()">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import spark.components.Label;
import spark.components.Window;
private var windows:Array = new Array();
private function main():void
{
var window:Window;
var numOfWindows:Number = 2;
for(var i:Number=0; i<numOfWindows;i++)
{
window = new Window();
window.width = 300;
window.title = "I am Window #"+i;
window.height = 200;
window.open(true);
window.showStatusBar = false;
windows.push(window);
}
trace("Complete!");
}
]]>
</fx:Script>
<s:WindowedApplication >
<!-- Compiles, but once I click this, it throws the error. -->
</s:WindowedApplication>
</s:Application>
我怎么会有一个可以控制几个窗口的透明应用程序(或者至少摆脱上面的错误)?提前致谢。