回调参数用法:(用于一个窗体调用另一个窗体,并有参数返回)
----被调用窗体
public var callback:Function; //定义关闭窗口后调用的函数
// 选择对象
protected function OnSelectObject(e:Event):void
{
if (callback !=null)
{
var str:XML=new XML("<rows></rows>");
for (var i:int=0; i<m_grid.selectedItems.length;i++)
{
str.appendChild(m_grid.selectedItems[i] as XML);
}
callback(str);
}
this.closeWindow();
}
// 选择对象
protected function OnSelectObject(e:Event):void
{
if (callback !=null)
{
var str:XML=new XML("<rows></rows>");
for (var i:int=0; i<m_grid.selectedItems.length;i++)
{
str.appendChild(m_grid.selectedItems[i] as XML);
}
callback(str);
}
this.closeWindow();
}
-------------调用窗体写法-----------
protected function OnQueryEntity():void
{
var query:QueryLan=new QueryLan();
query.callback=ReadBackValue;
query.showModal();
}
{
var query:QueryLan=new QueryLan();
query.callback=ReadBackValue;
query.showModal();
}
// 查询结果返回
// 把查询结果,显示到当前窗体中
protected function ReadBackValue(xml:Object):void
{
this._BindDGObject= xml as XML;
rowCount = (xml as XML).children().length();
}
// 把查询结果,显示到当前窗体中
protected function ReadBackValue(xml:Object):void
{
this._BindDGObject= xml as XML;
rowCount = (xml as XML).children().length();
}
-----
callback(str) 中的 str 要和 ReadBackValue(xml:Object) 中的xml类型一致。