1

2 つの public static 定数を宣言するこのクラスがあります。

package com.xxx.videoplayer_v2 {    
    import flash.display.DisplayObject;
    import flash.display.MovieClip; 
    import flash.events.Event;
    import flash.events.MouseEvent;
    import flash.geom.Rectangle;
    import flash.text.TextField;

    public class ControlBar extends MovieClip 
    {
        public static const VOLUME_PRESSED:String = "volumePressed";
        public static const PLAY_PRESSED:String = "playPressed";        
        ...

宣言は私には見栄えがしますが、プロジェクト内の他のクラスから定数を呼び出すと(ステージの例の下)

import com.xxx.videoplayer_v2.ControlBar;

trace(ControlBar.PLAY_PRESSED);

次のエラーが表示されます。

1119: 未定義の可能性があるプロパティ PLAY_PRESSED へのアクセスが、静的型クラスの参照を介して行われました。

なぜこれが起こるのですか?同じ構文を使用して、他のクラスでこれを何千回も実行しましたが、これまでにこの問題が発生したことはありません。

4

1 に答える 1

1

私はそれを考え出した!

ステージ上に、ActionScript用にエクスポートしたプロパティにControlBarのインスタンスがあります。

問題はこれでした。基本クラス(ControlBar)とまったく同じ名前のClassテキストフィールドに入力し、基本クラステキストフィールドに正しい「com.weborama.videoplayer_v2.ControlBar」を挿入しました。

「ControlBar」の代わりに「 Class」テキストフィールド「 VPControlBar 」への入力を修正しました。これで、基本クラスと同じ名前をそこに入れることができないことがわかりました。

私を助けてくれたみんなに感謝します!

于 2013-01-28T15:47:52.623 に答える