将 AS3 代码放在舞台/MC 时间线上,就像 AS2 一样,而不是放在类中

2024-03-06

我知道 ActionScript 3.0 从一开始就被设计为一种主要面向对象的语言,使用它意味着 Flash 文档中的时间线代码更少甚至没有。

我对 OOP 非常有经验,并且很乐意编写课程。然而,由于我主要使用 Flash 来制作动画,所以我几乎没有need编写除预加载器、字幕、质量控制、网站链接等之外的 ActionScript 代码。事实上,直到今天我仍然将我的 Flash 影片设置为使用 AS2,因为我已经习惯了gotoAndPlay()/gotoAndStop()、AS2 预加载器、字幕、质量控制甚至getURL()。当然,我真的很想继续前进,因为几乎每个人都在使用 Flash Player 9 或 10,而且现在我也涉足了其他 OO 语言,如 Java、C# 和 Objective-C。

我是 AS3 的新手,对 AS2 也不是很了解。考虑到我目前对 ActionScript 的使用,是否存在在时间线中使用非常简单的 AS3 代码而不是将代码移动到类中仍然可以的情况,特别是因为移动到类可能意味着不必要地将 LOC 数量从 4 增加到 40 ?(哎呀,后一种情况(“而不是……”)甚至是一个有效的担忧吗?)


如果您已经熟悉 AS2(并且也有使用其他语言的经验),那么切换到 AS3 应该不会太难。有几个地方发生了很大的变化:基本上是事件模型和一些广泛使用的 API,例如 flash.net(即加载内容,可以是图像、SWF、声音、XML 等)和显示列表(很多)不仅仅是电影剪辑,还有更多选项、更连贯、重新调整等等)。使用 XML 也发生了变化(永远),它更强大、更容易(但如果您愿意,您可以使用旧的 API,它仍然存在)。不过,语言本身的大部分内容并没有太大变化。

我确信您已经意识到在时间线中包含代码的潜在问题。嗯,这同样适用于 AS3,尽管 AS3 中不允许将代码放置在对象上之类的事情。

我认为在 IDE 中将内容放置在舞台中并使用动画影片剪辑没有问题。 IMO,这就是他们首先出现的原因。我知道有些人热衷于通过代码创建和定位一切。我不是其中之一。对我来说,IDE 可能是一个很好的布局、补间等工具,至少在大多数情况下是这样(另一方面,对于一些非常动态的东西,您也需要对布局进行编码)。

因此,我不会完全建议不要适度使用时间线代码。如果它适合您的需求,适合您的工作流程,并且让您可以做您需要做的事情,而又不会造成无法维护(甚至遵循)的混乱,为什么不呢?

如果在某些时候您需要将一些内容放入类中,则可以随时重构并移动代码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 AS3 代码放在舞台/MC 时间线上,就像 AS2 一样,而不是放在类中 的相关文章

  • UML 设计类图:具有另一个类作为属性的类?

    我很难弄清楚如何将特定场景建模为 UML 设计类图 假设我有以下情况 我有一个名为 CPoint 的类 它有两个属性 x 和 y R2 平面中的坐标 另外 我有一个名为 CLine 的类 它应该有两个 CPoint 作为属性 这对代码来说非
  • 为什么 ActionScript 中没有记录 drawRoundRectComplex() ?

    在研究actionscript 3的图形类时 我遇到了未记录的drawRoundRectComplex 方法 它是一个变种drawRoundRect 但有 8 个参数 最后四个是每个角的直径 x y 宽度 高度 左上 右上 左下 右下 ex
  • 如何向 Linq 表达式添加排序规则?

    如何实现 IQuariable 的方法如下 var trash from a in ContextBase db Users orderby a FirstName select a ToCollatedList 我想看到的结果 SELEC
  • 在 Python 中继承方法的文档字符串

    我有一个带有文档字符串的面向对象层次结构 需要与代码本身一样多的维护 例如 class Swallow object def airspeed self Returns the airspeed unladen raise NotImple
  • 使用公共类实现 Monolog

    我成功地实现了用于测试目的的 Monolog 记录器 现在我正在尝试在项目中使用它 该项目不使用任何MVC框架 我正在尝试编写一个公共类文件来包装对 Monolog 实例的访问 常用类文件 文件 app log php require au
  • Flex/AS3很奇怪的简单数字运算问题

    我的问题在 Flex 中描述起来非常简单 0 8 0 2 0 6000000000000001 以前有人得到过这个 我确定前两个成员是 0 8 和 0 2 并且是 Number 类 为什么会发生这种情况 另一件事 我从 像这样输入 var
  • 捕获/监听函数的执行

    我想添加到模块记录器中的所有功能 我想记录函数的 开始 时间和 结束 时间 这样我就可以获得每个函数 同步函数 的执行时间 但我不知道如何让它发挥作用 我不想以某种动态方式重写函数 我想在将来调试它们 所以需要保留原始代码 我需要找到某种方
  • 如何在多个 HTML 页面上播放背景音频?

    是否有解决方案可以让背景音频 音乐在网站上的多个页面上播放 而无需在每个页面加载时重新启动 该网站当前使用框架集 但我正在寻找替代方案 如果不让整个网站都 AJAX 我认为框架是唯一的方法 如果您需要的话 这里有一个关于制作 ajax 站点
  • 如何调整外部 SWF 的大小以适合容器?

    我想要完成的是调整外部 SWF 的大小 使其适合在舞台上作为容器呈现的显示对象 现在它显示在容器外部 重要提示 我不希望外部 SWF 占据整个舞台 我在舞台上为它准备了一个特殊的地方 那个容器 public function loaderC
  • 工厂中的依赖注入

    我对 DI 很陌生 但我真的很想尝试使用它 有件事我不明白 这是一个简单的工厂伪代码 我经常使用 class PageFactory public function construct dependency list save refere
  • HTTPS 上的 SWFUpload 无法正常工作

    当目标 servlet 侦听 HTTPS 时 我在使用 SWFUpload 上传文件时遇到问题 在 HTTP 上它工作得很好 仅当使用 FireFox 或 Opera 时才会出现此问题 在 IE 上它工作正常 没有尝试过其他浏览器 EDIT
  • 为什么java中的嵌套类与C#中的嵌套类在以下方面有所不同?

    我发现了一些类似的帖子 但找不到明确解释这一点的答案 我已经执行了类的嵌套 即 内部 类存在于 外部 类中 并尝试实例化内部类 这就是我遇到的场景 如果是 C class outside public class inside public
  • Erlang 参与者与 OOP 对象有何不同?

    假设我有一个 Erlang actor 定义如下 counter Num gt receive From increment gt From self new value Num 1 counter Num 1 end 同样 我有一个 Ru
  • 如何知道一个变量是否只是另一个对象的“指针”或者是否可以独立存在

    App New Object TypeName Microsoft SqlServer Dts Runtime Application PackageFullPath C SSISPackage dtsx Package App LoadP
  • 如何在Android Air应用程序中通过as3打开Instagram页面?

    我想通过单击应用程序中的按钮来打开 Instagram 页面 例如 Instagram 应用程序中的 instagram mypage 代码是什么 mybuttun addEventListener MouseEvent CLICK ope
  • 哪个类应该存储查找表? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 世界上有不同地点的代理 但任何地点都只有一个代理 每个特工都知道他在哪里 但我还需要快速检查给定位置是否有特工 因此 我还维护了一张从位置到代理
  • 如何*真正*编写 UML 基数?

    我想一劳永逸地知道如何编写 UML 基数 因为我经常不得不争论它们 所以非常欢迎证明和来源 如果我想解释一下a Mother可以有几个Children but a Child有且仅有一个Mother 我应该写 Mother 1 Child
  • 在android中加载swf文件时出现问题

    当我在 Android 模拟器中加载交互式 SWF 文件时遇到问题 我使用2 3 1 AVD 这是代码 package com androidpeople view import android app Activity import an
  • 可以在子例程中使用模块吗?

    最近 我开始使用 OO Perl 并且为我正在开发的新项目创建了很多新对象 因为我不熟悉有关 OO Perl 的任何最佳实践 所以我们很急于完成它 P 我将大量此类代码放入每个函数中 sub funcx use ObjectX i don
  • 此 xpath 查询的 Flex/AS3/E4X 等效项是什么?

    鉴于此文档

随机推荐

  • 可以在网站上嵌入 Github 问题列表(带有特定标签)吗?

    有谁知道有一种简单的方法可以将带有特定标签的问题列表从 github 嵌入到网站上吗 这是为了在项目网站上嵌入未解决的错误列表 使用 jQuery 的解决方案 有一种方法可以轻松地使用 github api 仅使用 javascript 无
  • 固定位置在 Safari 7 中不起作用

    我有一个固定位置的 div 当我滚动时它位于屏幕底部 而不是移动 然而 在 Safari 上 这个 div 的行为就像是绝对定位的 并随着其余内容一起上下移动 当我单击 检查元素 时 编程的 所需的 位置会突出显示 而不是视觉 实际 位置
  • 使用 Python min() max() 避免数值的字典顺序

    我有一个脚本可以从一组值中提取随机数 然而 今天它崩溃了 因为min and max 按字典顺序对值进行排序 因此 200 被视为大于 10000 我怎样才能避免这里的字典顺序 Len关键是在正确的轨道上 但并不完全正确 我找不到任何其他有
  • 使用 istream 从命名管道读取

    是否可以使用 C stl 从命名管道 mkfifo 读取 使用流 因此没有提前定义char buffer MAX SIZE 用于读操作 我想读取直到缓冲区结束并将结果放入std string 当前方法 bytes read fd buffe
  • 如何在iOS中检索ssl服务器证书?

    我希望能够获得 ssl 证书 如果可能的话 链 以便能够显示可分辨名称并确定它是否是 EV 证书 通过证书策略检测 EV 证书 维基百科 http en wikipedia org wiki Extended Validation Cert
  • 如何使用 Python 获取 Selenium Webdriver 上的会话 ID?

    我正在使用 SauceLabs 我需要 sessionId 来获取那里的作业 ID 并使用它在测试执行期间设置通过 失败状态 如何使用 python 获取会话 ID 找到了 Selenium Remote Webdriver session
  • 如何用 2 列制作 R 图例?

    我想在我的图表上制作一个图例 它是由plot 功能 原本的legend 函数将生成一个只有 1 列的列表 我怎样才能制作一个有两列的图例 我无法找到一种方法可以在一次调用中做到这一点legend对于标准地块 这是一个选项 绘制两个单独的图例
  • 在 JNA 中创建一个本机 Windows 窗口和一些带有 GWL_WNDPROC 的 GetWindowLong

    再会 我已经使用 JNA 与 Windows API 交互有一段时间了 现在我在创建窗口时陷入困境 据我做了以下事情 1 创建了现有窗口的子窗口并为其获取了有效的处理程序 2 了解Windows 中的每个窗口都有一个不间断的消息分发循环 3
  • 我可以更新 WebStorm 中的 TypeScript 版本吗?

    我目前正在使用 WebStorm 10 0 4 最新的 TypeScript 版本是 1 5 3 但在 WebStorm 中存在旧版本的 TypeScript 如何在 WebStorm 中更新我的 TypeScript 版本 在默认设置对话
  • 当路径不存在时的 SHParseDisplayName

    我正在开发一个替代品IFileOpenDialog and IFileSaveDialog 我几乎让它工作了 至少IFileOpenDialog 但是当我想返回时IShellItem代表新文件名 用户选择保存在GetResult 方法 我无
  • 删除注册表键值

    在 MSDN 中 它说在调用更改正在枚举的注册表项的函数时不应使用 RegEnumValue 那么这也适用于删除注册表项值吗 就像这段代码所做的那样 if RegOpenKeyEx m hkey m path c str 0 KEY ALL
  • Gradle:在自定义独立插件中使用“maven-publish”插件

    在我的第三个问题之后 几乎感觉像是在发垃圾邮件 因为我的问题看起来很微不足道 但我在 Gradle 文档中找不到对我的案例有任何帮助 而且关于 stackoverflow 的其他问题也没有帮助 这次 我无法使用maven publish插件
  • 如何在 Perl 中引用长字符串?

    我通常使用简单的引号 但有时我会得到很长的行 我无法中断并且还需要使用转义字符 所以我得到如下内容 my str select query accession query tag hit accession hit tag signific
  • Tesseract 对阿拉伯语单词/字母不返回任何内容

    我已经安装了 Pytesseract 它可以完美地处理法语 英语文本以及数字 但是当我尝试阅读任何阿拉伯文本 字母时 它不会返回任何内容 这是我使用过的代码 try from PIL import Image except ImportEr
  • 考虑到可扩展性的基于组件的应用程序:OSGi 还是 Akka?

    在我的硕士论文中 我正在开发一个用于销售大型活动门票的应用程序框架 我的主要要求是可修改性 可扩展性和性能 我的客户 活动组织者 应该能够在运行时轻松替换组件并添加功能 此类组件的一个示例是座位分配组件 我的导师说看看 OSGi 松散耦合的
  • 具有多个引用的 postgresql cte 仅运行一次

    只是想知道 在 pgsql cte 中是否会创建临时表 并且每次加入查询时都不会重新执行 cte 下面是同一查询的 pgsql 和 sql server 版本 sql server 需要 6 秒 pgsql 只需要 3 秒 这是侥幸还是永远
  • 使用 D3.js 在矩形上显示文本

    I am developing Normalized stacked bar chart using d3 js and trying to append a text on rect It is getting appended when
  • 为什么启动应用程序时会看到双状态栏?

    当启动我的 iPhone 应用程序时 我同时看到 Default png 中的状态栏和操作系统的内置状态栏 而不仅仅是看到操作系统的状态栏 我做错了什么 将 Default png 的大小调整为 320x480 如果您的 Default p
  • 将 html 字符串拆分为 N 部分

    有没有人有一个使用 C 拆分 html 字符串 来自tinymce 编辑器 并将其拆分为 N 个部分的示例 我需要均匀地分割字符串而不分割单词 我正在考虑只拆分 html 并使用 HtmlAgilityPack 来尝试修复损坏的标签 虽然我
  • 将 AS3 代码放在舞台/MC 时间线上,就像 AS2 一样,而不是放在类中

    我知道 ActionScript 3 0 从一开始就被设计为一种主要面向对象的语言 使用它意味着 Flash 文档中的时间线代码更少甚至没有 我对 OOP 非常有经验 并且很乐意编写课程 然而 由于我主要使用 Flash 来制作动画 所以我