我在Greenfoot教一门课,我被一些看似微不足道的事情困扰着。
我需要一个选项,每当有人在我的世界中拖入一个角色,然后将其放入其中,一个方法就会被触发。这是怎么做的?
发布于 2012-08-05 05:25:46
只需覆盖执行元上的addedToWorld()方法。例如,下面的示例定义了一个在插入到世界中时始终将自己定位在位置50,50的执行元:
public class MyActor extends Actor {
@Override
public void addedToWorld(World world) {
setLocation(50,50);
}
}当然,setLocation()调用是任意的,只要将参与者添加到这个世界中,您在该方法中提供的任何代码都将立即执行(无论是通过拖放交互方式,还是以编程方式)。
顺便说一句,你也可以在参与者的构造函数中加入一些初始化代码,但是由于这是在参与者被放入这个世界之前发生的,所以任何设置参与者的位置、旋转等的代码都会抛出异常。
https://stackoverflow.com/questions/11070090
复制相似问题