【问题标题】:1046: Type was not found or was not a compile-time constant: dude1046:未找到类型或不是编译时常量:dude
【发布时间】:2013-02-16 13:56:44
【问题描述】:
package  {
    import flash.display.MovieClip
    import flash.events.Event
    public dynamic class dude extends MovieClip{
        try
            {
        //public var _dude:dude;
        public const TYNGDE:Number = 2;

        private var _vx:Number = 0;
        private var _vy:Number = 0;
        public var _dude:dude;


        public function Test():void {
            try
            {
            _dude.x = 100;
            _dude.y = 100;
            }
            catch ( e:Error )
            {
                trace("Feilen er: " + e);
            }

            addEventListener(Event.ENTER_FRAME, nyskjerm);
        }

        private function nyskjerm(e:Event):void{
            _vy += TYNGDE;
            try
            {
                _dude.x += _vx;
                _dude.y += _vy;
            }
            catch ( e:Error )
            {
                trace("Feilen er: " + e);
            }


            SjekkBrett();
        }

        private function SjekkBrett():void{
            if (_dude.x < 0 && _vx < 0){
                _dude.x = 0;
                _vx *= -1;
            }
            else if ((_dude.x+100) > stage.stageWidth && _vx > 0){
                _dude.x = stage.stageWidth - 100;
                _vx *= -1;
            }
            else if (_dude.y <0 && _vy <0){
                _dude.y = 0;
                _vy *= -1;
            }
            else if ((_dude.y+200) > stage.stageHeight && _vy > 0){
                _dude.y = stage.stageHeight - 200;
                _vy *= -0.8;
            }
        }

    }
    catch ( e:Error )
            {
                trace("Feilen er: " + e);
            }

}}

我已经尝试给这个类赋予与舞台相同的名称。我试过不实例化花花公子,直接访问它,也不起作用。该错误表明故障起源于第 1 行,但这对我来说没有多大意义。帮忙?

【问题讨论】:

  • 你有try..catch里面的所有类声明?尝试删除它。

标签: actionscript-3 flash flash-cs6


【解决方案1】:

你在你的 dude 类中声明了一个 dude Object - 我认为这不是你想要的?

当你设置“_dude.x = 100;”时,_dude还没有被实例化(即:为null),所以你不能在它上面设置属性——导致错误。

如果我对您的要求正确,只需在您的代码中将“_dude”替换为“this”并删除“public var _dude:dude;”完全。

正如 user1875642 所说;删除 try/catch 声明。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-04
    相关资源
    最近更新 更多