我正在使用Sparkskin按钮在按钮上放置一个复选框。
目前按钮正在接收鼠标点击,并且复选框无法选择。
我希望用户能够选择/取消选中该复选框。
我是否需要在Sparkskin中设置或覆盖一个函数才能实现?
答案 0 :(得分:2)
首先,创建自定义按钮以扩展spark按钮。将mouseChildren
属性设置为true
(在super()
调用之后)。覆盖mouseEventHandler
方法,该方法处理按钮的所有鼠标事件。检查target
活动,如果super.mouseEventHandler
是您的复选框,请不要致电target
,以防您在查看复选框时不希望点击您的按钮
public class MyButton extends Button {
[SkinPart]
public var checkBox:CheckBox;
public function MyButton() {
super();
mouseChildren = true;
}
override protected function mouseEventHandler(event:Event):void {
if (event.target != checkBox)
super.mouseEventHandler(event);
}
}
}