flex如何在主页面中获得其所包含的组件页面中的控件
a.mxml是主应用页面,b.mxml是组件页面且嵌入到a.mxml页面中,我想在a.mxml页面中修改b.mxml中的一个控件的属性,所以要先通过这个控件的id获得到这...
a.mxml是主应用页面,b.mxml是组件页面且嵌入到a.mxml页面中,我想在a.mxml 页面中修改b.mxml 中的一个控件的属性,所以要先通过这个控件的id获得到这个控件,如何做?
展开
3个回答
展开全部
试试自定义事件,在b.mxl中自定义一个事件,在a中监听该事件,让事件返回控件的id,这样在a中就可以操作了。
以传递字符串为例;
/*自定义事件类*/
package
{
import flash.events.Event;
public class Myevent extends Event
{
public function MyeventClass(type:String)
{
super(type, false, false);
}
}
}
在b中 在你要获取的控件中让该控件抛出自定义事件
var e:TextEvent = new TextEvent("myEvent");
e.type = "123";
this.dispatchEvent(e);
在a中:
//监听事件
pid.addEventListener("myEvent",hehe);
private function hehe(e:Event):void
{
//通过 e.type
即可得到在b中所付的值"123";
}
希望能帮助你啊。
以传递字符串为例;
/*自定义事件类*/
package
{
import flash.events.Event;
public class Myevent extends Event
{
public function MyeventClass(type:String)
{
super(type, false, false);
}
}
}
在b中 在你要获取的控件中让该控件抛出自定义事件
var e:TextEvent = new TextEvent("myEvent");
e.type = "123";
this.dispatchEvent(e);
在a中:
//监听事件
pid.addEventListener("myEvent",hehe);
private function hehe(e:Event):void
{
//通过 e.type
即可得到在b中所付的值"123";
}
希望能帮助你啊。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
按父子关系去拿就可以了,比如b.mxml在a.mxml的ID是b,b有一个id为txt的组件在a的页面就是a.b.txt然后去拿txt的属性就行了,前提是可访问的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询