求助:利用flex当前页面某一按钮弹出另外一个页面
我想利用FLEX实现在当前页面“添加“按钮后,弹出一个新的页面以供用户输入信息,如输入日志等。请问该如何实现?哪位高手知道的话,麻烦告诉一下方法。
[解决办法]
共有两个文件:TitleWindowApp.mxml(这个是主文件)
<?xml version="1.0" encoding="utf-8"?>
<!-- Main application to demonstrate TitleWindow layout container. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;
import mx.containers.TitleWindow;
import flash.geom.Point;
private var point1:Point = new Point();
private function showWindow():void {
var login:SimpleTitleWindowExample=SimpleTitleWindowExample(PopUpManager.createPopUp( this, SimpleTitleWindowExample , true));
point1.x=myButton.x;
point1.y=myButton.y;
point1=myButton.localToGlobal(point1);
login.x=point1.x+25;
login.y=point1.y+25;
login.loginName=returnedName;
}
]]>
</mx:Script>
<mx:Panel title="TitleWindow Container Example" height="75%" width="75%"
paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10">
<mx:Button id="myButton" label="Click to open the TitleWindow container"
click="showWindow();"/>
<mx:Text id="returnedName" text="" width="100%"/>
</mx:Panel>
</mx:Application>
SimpleTitleWindowExample.mxml文件代码:
<?xml version="1.0" encoding="utf-8"?>
<!-- Simple custom MXML TitleWindow component.
The TitleWindowApp application displays this component.
You cannot run it independently. -->
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
title="Title Window" x="168" y="86">
<mx:Script>
<![CDATA[
import mx.managers.PopUpManager;
import mx.controls.Text;
public var loginName:Text;
private function returnName():void {
loginName.text="Name entered: " + userName.text;
PopUpManager.removePopUp(this);
}
]]>
</mx:Script>
<mx:HBox>
<mx:Label text="Enter Name: "/>
<mx:TextInput id="userName" width="100%"/>
</mx:HBox>
<mx:HBox>
<mx:Button label="OK" click="returnName();"/>
<mx:Button label="Cancel" click="PopUpManager.removePopUp(this);"/>
</mx:HBox>
</mx:TitleWindow>
[解决办法]
PopUpManager.createPopUp(this,日志界面名称);
[解决办法]
新建一个基于TitleWindow的Component,然后点击的时候利用PopUpManager. createPopUp方法就行了。例如
private var PopChart:ItemChart;
public function ShowActionItemChart(chartParas:Object):void
{
PopUpManager.removePopUp(this.PopChart);
PopChart= ItemChart(PopUpManager.createPopUp(this.parent,ItemChart,true));
PopChart.ChartParas = chartParas;
PopUpManager.centerPopUp(PopChart);
}