flex 中如何判断鼠标点击是组件本身,还是不是本身?
2个回答
展开全部
你用event.target和event.currentTarget。
target表示你当前点击的对象,往往是组件内部的部分。
currentTarget就是指当前组件本身了。
你可以在侦听处理函数中trace(event.target.toString());和trace(event.currentTarget.toString());去看下结果的。
target表示你当前点击的对象,往往是组件内部的部分。
currentTarget就是指当前组件本身了。
你可以在侦听处理函数中trace(event.target.toString());和trace(event.currentTarget.toString());去看下结果的。
追问
你好,你说的这些我都知道,我的意思是说当鼠标点击的时候怎么判断点击的是你要指定的那个组件,而不是application种的其他组件或者是application空白的地方
我是用“!DisplayObjectContainer(this).contains(DisplayObject(event.target))”这样判断的,但是显然这样还是不行。
我现在所有做的是如何让一个组件在点击时弹出一个对象,然后点击其他非本身的任何地方都能将它收回,用焦点事件还不足以解决此问题。
追答
if(event.target is Button) //Button替换为你的组件类,以防点击不具备id属性的object
{
if(event.target.id == "组件id") //你对应的组件id,这个是唯一的指定进行判断
return;
}
用ID进行判断,可以唯一确定你的当前组件,做个类型判断,目的是为了防止你点击的object不具备id属性而引发问题!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询