Flash CS5 Professionalの使用シンボルを作成してステージにドラッグし、インスタンス名をGreenLight1にしました。これをドキュメントクラスから見えるようにするには、単にGreenLight1.visible = trueを実行します。私がファイルをテストするとうまくいくのです。私がドキュメントクラスに留まっている限り、私は行かなくてはなりませんが、今は別のクラスに移動して、この単純なオブジェクトにアクセスできるようにFlashを取得しようとするとあらゆる種類の問題に遭遇しようとしています。私が探しているのは、この新しいクラスで特定の条件が発生したときに、このGreenLight1が非表示(visible = false)になり、FlashがGreenLight1に全くアクセスできないようにすることだけです。私がこれまで試したFlash CS5は、ドキュメントクラス以外のクラスの表示オブジェクトを参照します
もの:
ステージがクラスに渡され、_stageで参照されていると私は_stage.addchildまたはそのような何かを行うときにうまく働いています。だから、私は "_stage.GreenLight1.visible = false;" "ReferenceError:Error#1069:プロパティGreenLight1がflash.display.Stageに見つかりませんでした。デフォルト値はありません。"
私のドキュメントクラスはスプライトを拡張しているので、私はルート関数を試してみたと思います。だから私は "Sprite(root).GreenLight1.visible = false;"私は "1119:静的型flash.display:Spriteを持つ参照を介して未定義のプロパティGreenLight1にアクセスする可能性があります。"
最後に、回答のアドバイスでthis threadに記載されているように、リソースクラスを作成しようとしました。 GreenLight1が何を開始するのか分からないので、私は「1120:未定義のプロパティGreenLight1にアクセスしました」ということを私が始めたのと同じ問題に遭遇しました。ここでResource.asのための私のコードは、(私は、ドキュメントクラスから、このクラスに何かを渡すことになってんだ?)されています
`
package {
import flash.events.Event;
import flash.display.Sprite;
import flash.display.DisplayObject;
public class Resource extends Sprite {
public static var GL1:GreenLight;
public function Resource() {
addEventListener(Event.ADDED_TO_STAGE, init, false, 0, true);
}
private function init(e:Event):void{
Resource.GL1 = GreenLight1;
}
}
}
タイプ "グリーンライト" GreenLight1のソースシンボルからのものです。私は、 "Export for ActionScript"をチェックしており、ベースクラスはGreenLightです。だからそれはどこから来るのですか。私は "新しいGreenLight"をどこかのように作るはずですか?私は "Resource.GL1.visible = false;"を使用してアクセスしようとしているクラスですが、上記の#3にリストされているコンパイルエラーが発生するので、実際には心配することはありません。
いずれにしても、私は次に何を試すべきかについて迷っています。ですから、どのように私はGreenLight1を認識するためにドキュメントクラスではないクラスを取得するのですか?
私にあなたに聞かせてください...指定されたドキュメントクラスがないと1と2が動作しないと言っていますか?私の.flaでは、ドキュメントクラスを指定していますが、それはあなたが参照しているものではありませんか? 1または2の仕事をするためには何をする必要がありますか? GreenLight1は既にディスプレイの積み重ね順序の一部ですが、そこに直接アクセスする方法はありますか? – FlashNoob468
申し訳ありませんが、頭の中を飛び越えて、より良い答えを教えてください。 – shanethehat
1&2に関する答えを修正しました。 – shanethehat