我在BorderContainer中有一些按钮,我想在用户点击按钮时执行附加事件。但是,父母也有点击事件。
我想在用户点击按钮A时执行操作A,使用按钮B执行操作B,如果用户点击背景,则执行操作C.
实际上,如果我将eventHandler添加到bordercontainer,则按钮不再起作用。没有鼠标光标,没有鼠标悬停效果,如果你点击它,它就是启动的动作C.
我的边境容器:
useHandCursor = true;
mouseChildren = false;
buttonMode = true;
在按钮和bordercontainer中,我使用MouseEvent.Click
事件,并且都调用相同的“click”函数,该函数将根据event.target
的属性执行不同的操作。
答案 0 :(得分:1)
我的坏。感谢Timofei。
bordercontainer和click功能都是错误的。
在边境容器中,mouseChildren
必须设置为true
,这样孩子们才能参与此活动。
在我的点击功能中,使用event.target
是一个坏主意。它试图从bordercontainreskin获取属性。我不得不使用event.currentTarget
代替。最后,我添加了event.stopPropagation()
以防止bordercontainer在用户点击按钮时捕获事件。而现在,一切都运转良好。
谢谢