2

私はグリーンフットでクラスを教えています、そして私は些細なことのように思われる何かに行き詰まっています。

誰かが私の世界で俳優をドラッグし、それをドロップするたびにメソッドがトリガーされるというオプションが必要です。これはどのように行われますか?

4

1 に答える 1

0

addedToWorld()アクターのメソッドをオーバーライドするだけです。たとえば、次の例では、ワールドに挿入されたときに常に 50,50 の位置に自分自身を配置するアクタを定義しています。

public class MyActor extends Actor {

    @Override
    public void addedToWorld(World world) {
        setLocation(50,50);
    }

}

setLocation()呼び出しはもちろん任意です。そのメソッドで指定したコードは、アクターがワールドに追加されるとすぐに実行されます (ドラッグ/ドロップによるインタラクティブな方法か、プログラムによる方法かに関係なく) 。

補足として、アクターのコンストラクターに初期化コードを配置することもできますが、これはアクターがワールドに配置される前に行われるため、アクターの位置、回転などを設定するコードは例外をスローします。

于 2012-08-04T21:25:46.100 に答える