web-dev-qa-db-ja.com

Flash AS3:ReferenceError:エラー#1056:プロパティを作成できません

Flash/AS3で何かを書いていますが、この問題に遭遇しました。

ReferenceError: Error #1056: Cannot create property txtInput on package.name.DocumentClasss

基本的に私はドキュメントクラスを持っており、ムービークリップクリップのインスタンスを作成して問題なくコンパイルできます。しかし、ステージに入力テキストフィールド(パレットの「T」アイコン)を配置すると、上記のエラーでコンパイルが拒否されます。

これが違いを生むかどうかはわかりませんが、FlashIDEでコンパイルを行ってFlashDevelopでActionScriptを作成しています。また、Strict Modeの下でWarnings ModePublish Settings -> Flash -> Script -> Settings... -> Errorsの両方を選択しています。

私はこれに対する解決策をオンラインで検索しましたが、Flash IDEのスタッグにテキストフィールドを挿入せず、代わりにドキュメントクラスで動的に作成することが唯一の提案のようです。

より良い解決策はありますか?

ありがとう

17
bguiz

"ステージインスタンスを自動的に宣言する"がオフになっているようです。したがって、namedインスタンスを追加する場合は、クラスで宣言する

import flash.text.TextField;
...
public var txtInput:TextField;
...

ムービープロパティのフラッシュタブでステージインスタンスの宣言設定を見つけ、[スクリプト:Actionscript3]選択ボックスの横にある[設定]をクリックします。

個人的には常にこれをオフにしているので、クラスでインスタンスを宣言する必要があり、何が起こっているかをより正確に追跡できます。

28
Les