1

我有这个类,我在其中声明了两个公共静态常量:

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:通过静态类型 Class 的引用访问可能未定义的属性 PLAY_PRESSED。

为什么会这样?我已经用相同的语法对其他类做了数千次,但我以前从未遇到过这个问题。

4

1 回答 1

1

我想到了!

我在舞台上有一个 ControlBar 实例,它的属性是我为 ActionScript 导出的。

问题是这样的:我填写了与基类(ControlBar)完全相同的名称的类文本字段,并在基类文本字段中插入了“com.weborama.videoplayer_v2.ControlBar”,这是正确的。

我修复了填写类文本字段“ VPControlBar ”而不是“ControlBar”。现在我知道我不能将基类的相同名称放在那里。

感谢所有试图帮助我的人!

于 2013-01-28T15:47:52.623 回答