0

私はJavaFXの初心者です。私は JavaFX クラス Sprite を持っています:

public class Sprite extends CustomNode {

protected var xPos : Integer;
protected var yPos : Integer;

public function setxPos(){
    this.xPos=50;
}
public function getxPos():Integer{
    return this.xPos;
}
public function move() : Void{
    xPos=xPos+2;
}

}

このクラスのインスタンスをクラス Main で使用します。関数 setxPos() で変数の値を設定します。変数の値を出力すると、値は 0 です。これは Main クラスのコードです。

var sprite : Sprite;
sprite.setxPos(50);// use setter
println(sprite.getxPos());// value is 0
sprite.xPos=50;// without setter
println(sprite.getxPos());// value is 0 too

問題はどこですか?? ありがとう。

4

1 に答える 1

1

セッター用に定義されたそのような関数はありませんsetxPos(value: Integer)-引数のない関数しかsetxPos()なく、それでも値を50にハードコードします-サンプルコードがコンパイルされる可能性は低いようです。


JavaFX 1.xと JavaFX Script 言語は、年末までに Oracle によって完全にサポートされなくなり、Oracle はこれらのテクノロジのランタイム配布サーバーをオフにすることになるため、廃止することをお勧めします。

代わりに、多くのチュートリアルがある Java 言語で書かれたJavaFX 2の学習に時間を費やしてください。JavaFX 2 について学習するには、 JavaFX 2 ドキュメントの例を読み、それに従ってください。

これは、 JavaFX 2 スプライト アニメーションの優れた例を含むブログ リファレンスです。

于 2012-06-25T02:37:56.280 に答える