我正在使用flex4,我正在寻找创建多窗口Web应用程序的答案。我的应用程序有点复杂,目前我只知道使用PopupManager创建一个新窗口。 我应该为每个要实例化的窗口创建每个MXML吗?然后加载mxml并将其放入舞台?是否有任何教程描述?我希望程序模块化,易于管理,扩展。
我正在使用的当前方式是使用Group对窗口内的所有控件进行分组,如果用户想要打开该窗口,我将显示该组并将其显示在前面。这是做窗口的正确方法吗?但我无法支持拖累。
我想知道是否有可拖动窗口或对话框的原生支持?
到目前为止,所有控件都放在一个mxml文件中,是否可以将一个窗口(或一个组)放在一个单独的mxml文件中?
答案 0 :(得分:1)
在回答您的第一个问题时,请查看Flexlib中的MDI内容。
在回答第二个问题时,请查看有关如何管理项目的Flex教程。
答案 1 :(得分:1)
问题不在于什么文件,而在于如何相互实现对象或类。如果多个窗口共享相同的结构或共享一种控件,那么你肯定可以为这些窗口创建一个基类,对于控件也是如此。
对于可以拖动的组件或一组常用控件,没有什么特别困难的。 Gregor Kiddie有一点,你为什么不查看一些Flex教程?
答案 2 :(得分:1)
要使用PopupManager,您必须首先在项目旁边的项目中创建一个包含TitleWindow的应用程序中的mxml组件,例如作为组件容器,该容器很有用,因为它类似于一个窗口,它有关闭按钮...
例如:
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init();" initialize="requestEvent();" width="368" close="close();" height="116" layout="absolute" backgroundAlpha="100" title="Create Folder" showCloseButton="true" x="29" y="21" borderColor="#FFFFFF" cornerRadius="10" alpha="2" themeColor="#FFFFFF">
</mx:TitleWindow>
要从应用程序实例化并弹出该组件,您必须使用PopupManager 例如,如下代码:
var create_folder_w:create_folder_window = create_folder_window(PopUpManager.createPopUp(this,create_folder_window,true));
PopUpManager.centerPopUp(create_folder_w); create_folder_w.addEventListener(FlexEvent.REMOVE,close_create_folder_refresh);
该代码将显示我在第一部分中显示的窗口组件
我希望这个简单的例子可以帮助你......
答案 3 :(得分:0)