私はクラスPersonを持っています。つまり、名前と年齢のPersonの定義です。 SuperClassはメインクラスです。 FlashドキュメントのtextBoxに名前と年齢を表示したい。ActionScriptのクラス構造
私はフラッシュに初心者です。クラス構造やコーディング規則に問題があります。これは、 "定義されていないメソッドaddChildを呼び出す"というエラーを出します。
私はクラスPersonを持っています。つまり、名前と年齢のPersonの定義です。 SuperClassはメインクラスです。 FlashドキュメントのtextBoxに名前と年齢を表示したい。ActionScriptのクラス構造
私はフラッシュに初心者です。クラス構造やコーディング規則に問題があります。これは、 "定義されていないメソッドaddChildを呼び出す"というエラーを出します。
あなたのPerson Classはデータオブジェクトであり、View操作を実行しようとすべきではありません。だから、
:あなたが動作するように上記のコードのためのPerson変数をパブリックにする必要があります
protected var p1:Person;
protected var tf:Textfield;
public function SuperbClass() {
p1 = new Person('Brenda', 30);
tf = new TextField();
tf.text = p1.name + ' is ' + p1.age + ' years old.';
addChild(tf);//SuperBClass extends Sprite, so this works
}
注意。あなたはこのように呼びたい
public function get info():String {
return name + ' is ' + age + ' years old.';
}
:
あなたのPersonクラスは、MoviClipやSpriteなど、addChildメソッドを持つものを拡張する必要があります。
良い説明別の方法として、あなたは文字列全体を返し者にゲッターを作成することができます。 –
別のgetter public関数get name:String {return name;}を追加した場合。なぜそれは動作しません? –
あなたのコードを見ることなく言うのは難しいですが、プライベート変数の名前がゲッター関数と同じであれば、それは機能しません。これは、多くの人々が大会の問題として(例えば_name)、自分の私的な変数名の前に "_"を付けることを選択する理由です。 –