我可以在创建像变量这样的对象时设置一个函数吗?
鉴于我有一个容器类和一个CustomButton类:
function doSomething():Void{}
var button:CustomButton = CustomButton{
posX : 50;
posY = 100;
onMouseClicked: doSomething;
}
简短的故事:我需要主容器对象来处理放在容器中的对象中发生的鼠标事件。
答案 0 :(得分:1)
如果我已正确理解您的要求,我认为可以通过一些语法更改来实现。显然,如果您需要自定义版本,可以扩展Button:
function doSomething():Void{
println("clicked");
}
var button:Button = Button{
text: "Click Me"
translateX: 50;
translateY: 100;
action: doSomething
}
Stage {
title : "ButtonTest"
scene: Scene {
width: 200
height: 200
content: [ button ]
}
}
答案 1 :(得分:1)
最简单的改变是改变:
function doSomething():Void{}
到
function doSomething(e:MouseEvent):Void{}
动作属性很好,但我确定你想要一些自定义翻转效果或使用onMouseEntered等的东西。