首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从ActionScript 2迁移到ActionScript 3

从ActionScript 2迁移到ActionScript 3
EN

Stack Overflow用户
提问于 2014-01-20 21:22:58
回答 1查看 69关注 0票数 0

我正试图将其他人的闪存应用程序转换为ActionScript 3,我以前从未处理过ActionScript。我试着按照错误信息告诉我的去做,但是他们在绕我转。因此,这里是一个简化的情况。我在基本文件夹中有一个操作脚本,如下所示:

代码语言:javascript
复制
class IF12345
{
    var a0:controls.Button;
    var a1:controls.TextArea;
    var a2:controls.TextInput;
}

现在,控件如下所示:

代码语言:javascript
复制
dynamic class mx.controls.Button extends mx.controls.SimpleButton
{
    var enabled;
    function Button()
    {
    }
    function draw()
    {
    }

    var borderW = 1;
}

第一个错误是,它抱怨一个操作脚本必须有一个外部可见的类,所以我在基本文件中向类添加了public。然后它说没有包就不能有一个公共类,所以我把它包装在一个包中。

之后,它说操作脚本必须有一个外部可见的控件类,所以我向控件类添加了public。当然,它随后抱怨需要在包中,但是当我将控制类放到包中时,它说我不能有一个嵌套的包。所以现在我不知道该怎么办了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-20 22:01:17

看起来你在几个问题上搞混了,但我看到的主要问题是,你似乎想让类名包括整个包。我认为你想要的一个例子是:

代码语言:javascript
复制
package controls
//      ^^^^^^^^ The controls package is defined here, not when providing the
//               class name like in your example.
{
    import flash.display.SimpleButton;
    //     ^^^^^^^^^^^^^ In ActionScript 3, SimpleButton is in the
    //                   flash.display package, and needs to be imported with an
    //                   import statement above the class definition.

    public class Button extends SimpleButton
    //           ^^^^^^ We only use the class name here. You can do the fully
    //                  qualified class name for the extended class, but the
    //                  import statement is cleaner and makes that unnecessary
    //                  except for in uncommon circumstances.
    {
        private var enabled:Boolean = false;
        private var borderW:int = 1;

        public function Button()
        {
            // Constructors must be public.
        }

        public function draw()
        {
            //
        }
    }
}

还有你的另一班:

代码语言:javascript
复制
package
{
    import controls.Button;
    //     ^^^^^^^^^^^^^^^ Need to import your above Button class.

    public class IF12345
    {
        public var a0:Button;
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21244423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档