【问题标题】:How to generate an SWF file from an actionscript file?如何从动作脚本文件生成 SWF 文件?
【发布时间】:2011-04-20 10:59:56
【问题描述】:

您好,我有一个显示按钮的动作脚本文件。我想从我的显示器中删除该按钮。所以我需要对 actionscript 代码进行更改,并在更改后生成一个新的 SWF 文件。

任何人都可以帮助我了解如何从动作脚本文件生成 SWF 文件。

提前致谢。

【问题讨论】:

    标签: actionscript-3 actionscript flash swfloader


    【解决方案1】:

    我想你是在问你用什么将 as3 编译成 .swf 文件。

    您的源文件是 .fla 还是 .as 文件?请记住,.swf 不是源文件,它是编译后的文件。因此,如果您想即时修改它,您可以使用上面 anemgyenge 建议的方法。

    否则,如果“即时”不是您的意图,您需要对其进行反编译 - 这并不会真正产生高质量的源代码,因为反编译的符号可能难以使用。

    Flash CS5 可以编译成 .swf,你的主要源文件是 .fla 和 .as 的代码文件。

    Flex SDK 可以将 AS3 编译为 .swf,您可以使用 Flex Builder 或 Flash Develop 作为 IDE 来编辑您的 as3 代码。

    FlashDevelop 是免费的,您可以在这里获取:

    FlashDevelop Download Page

    您需要 Flex SDK 才能使用 FlashDevelop 进行编译,因此您需要在此处获取:

    Flex SDK - you can use either 3 or 4

    如果您想修改它,何不试试 wonderfl.net。网站的布局有点草率,但是有大量的代码可以学习,你不需要安装任何东西!

    【讨论】:

      【解决方案2】:

      如果您仍然遇到问题并需要快速解决方案,那么您可以尝试解决方法,而不是“更改 actionscript 代码并生成新的 SWF”。

      将带有按钮的 swf 文件嵌入到新的 Flash 项目中: 为此,请使用 Embed 元标记并将文件作为 ByteArray 嵌入,然后将其加载到 Loader 对象。

      [Embed(source="filename-of-swf-with-button", mimeType="application/octet-stream")]
      var class1:Class;
      
      var ldr:Loader = new Loader();
      ldr.loadBytes(new class1());
      

      在此之后,您可以通过ldr.content 访问“swf”内容。 好了,如果您知道实例的名称,请将其设为不可见或将其从显示列表中删除。如果你不知道这个名字,那就试着找到它吧:

      for(var i:int = 0; i < ldr.content.numChildren; i++)
      {
           trace(ldr.content.getChildAt(i).name);
      }
      

      搜索后,选择按钮实例。

      【讨论】:

      • 如果我听起来很傻,请原谅我。嗨,我是动作脚本和 Flash 领域的新手。因此,您能否用上述看起来令人兴奋的方法指导我。上面的代码sn-p应该用什么软件来运行以及如何去做。
      • @engineerMaster 您通常使用 Adob​​e FlashBuilder 或免费的 Flex SDK 来处理 actionscript,并编译为 .swf。
      【解决方案3】:

      您是要求动态生成(在运行时)还是将 AS 文件编译为 SWF 文件?如果您只是想将 AS 文件编译为 SWF,您可以在各种 ActionScript IDE(Flash Builder、Flex、FlashDevelop [我最喜欢的])中创建一个新项目,将相关文件作为您的主应用程序文件,编译它,如果一切运行良好... presto - 你有一个 SWF!

      每个 IDE 将上述“*.as”文件设置为主应用程序文件的方式略有不同。您必须确保它扩展 Sprite 或 MovieClip 类(或另一个已经这样做的基类),以便它有一个入口点来将自己附加到舞台。

      【讨论】:

        猜你喜欢
        • 2021-04-15
        • 2012-08-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-03
        相关资源
        最近更新 更多