adobe flash buider (flex4):错误 #2025 或错误:addChild() 在此类中不可用。相反,使用 addElement()

2024-03-02

我是 Flex 的新手,所以为我的愚蠢道歉。我一直在寻找答案,但没有找到任何似乎可以解决问题的东西。

我想做的事:移植这个例子http://www.adobe.com/devnet/air/flex/articles/flex_air_codebase_print.html http://www.adobe.com/devnet/air/flex/articles/flex_air_codebase_print.html到 Flash Builder 4。

一切似乎都很好,但有一件事。当我使用Air应用程序的原始代码时

<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
                       xmlns:s="library://ns.adobe.com/flex/spark" 
                       xmlns:mx="library://ns.adobe.com/flex/mx"
                       creationComplete="onApplicationComplete()">
<fx:Script>
    <![CDATA[
        private static const neededForCompilation:AirGeneralImplementation = null;
        private function onApplicationComplete():void
        {
            var can:MainCanvas = new MainCanvas();
            this.addChild(can); 
            can.labelMessage = "Loaded in an AIR Application ";
        }
    ]]>
</fx:Script>

<fx:Declarations>
    <!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>


</s:WindowedApplication>

我收到此运行时错误

错误:addChild() 不可用 这个班。相反,使用 addElement() 或者修改皮肤(如果有的话)。 在 Spark.components.supportClasses::SkinnableComponent/addChild()[E:\dev\4.0.0\frameworks\projects\spark\src\spark\components\supportClasses\SkinnableComponent.as:1038]

如果我用代码替换

this.addElement(can);

一切都加载良好,但第一次尝试按主画布上的任何按钮时,出现以下运行时错误

ArgumentError:错误#2025:提供的 DisplayObject 必须是调用者的子级。 在 flash.display::DisplayObjectContainer/getChildIndex() 在 mx.managers::SystemManager/getChildIndex()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\SystemManager.as:1665] 在 mx.managers.systemClasses::ActiveWindowManager/mouseDownHandler()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\managers\systemClasses\ActiveWindowManager.as:437]

这是主画布的超级简单代码

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
               creationComplete="init();">
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>
    <fx:Script source="main.as" />
    <mx:Label id="lblMessage" text="The UI from the shared Flex app BothCode" x="433" y="112"/>
    <s:Button x="433" y="141" click="saveFile();" label="Save File"/>
    <s:Button x="601" y="141" click="GeneralFactory.getGeneralInstance().airOnlyFunctionality();" label="Air Only"/>
</s:Application>

任何帮助将不胜感激。任何关于如何设置一个可以在 Air 和 Flash 中编译同时共享相同代码(全部针对 Flex 4)的项目的指示也将受到极大的赞赏。

谢谢你!


我在使用 Flex 4 教程时遇到了同样的问题。我做了与您相同的事情,并在主画布上使用了 组件。然而,本教程使用了 ,我发现的解决方案是将主画布从 更改为 。问题似乎是在应用程序中嵌入应用程序。

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

adobe flash buider (flex4):错误 #2025 或错误:addChild() 在此类中不可用。相反,使用 addElement() 的相关文章

  • Html5 视频和 Flash 方法

    研究 HTML5 视频标签 并研究哪些浏览器支持哪些视频文件类型 我最初的想法是事情变得比仅仅使用 Flash 更困难 我想知道是否有人已经找到一些骨架代码 与视频的开发方法相结合 来执行以下操作 如果闪光灯可用 请使用它 如果没有 请尝试
  • 在flex中以编程方式获取SIM号码

    我想以编程方式获取SIM号码 在flex中可以吗 在android开发人员指南中我看到了电话管理器类 同样我们在flex中有什么东西吗 提前致谢 看看这个 这确实是一个 hack 但却是您从 Flex Mobile 调用 Java API
  • 在不使用服务器套接字的情况下侦听 AS3 (AIR) 客户端中的传入连接

    我设法创建一个 C 服务器 使用它向 AS3 AIR 客户端发送文件sockets 在 AS3 方面我使用的是flash net Socket库通过以下方式接收数据TCP 它是这样工作的 gt 我打开我的服务器 它侦听客户端 另外我可以创建
  • Shape、Sprite、MovieClip 和其他显示对象:何时使用?

    有大量的显示对象flash display包裹 我不清楚在什么情况下应该使用Shape Sprite or MovieClip 使用它们各自的优点和缺点是什么 先感谢您 Shape http help adobe com en US Fla
  • 在多个 Flex 应用程序之间共享资源(图标/图像)的最佳方式是什么?

    我正在为我不久前创建的 Flex 应用程序创建一个新的 精简版 版本 我已经将许多类和组件移植到编译 SWC 文件的 Flex 库项目中 因为两者都是 Cairngorm 应用程序 所以我无法完全消除重复代码 但我应该能够共享资产 例如图标
  • 在 ActionScript 中移动数组中的对象,产生体育场波浪效果

    我想移动数组中的所有对象 产生体育场波浪效果 我想根据舞台上的 y 值移动对象 我所有的方块大小都是 50x50 我想将它们向上移动然后向下移动 下面是我的代码 import fl transitions Tween import fl t
  • 使用flash动作脚本开发网络游戏

    简而言之 如果我想使用 Flash 技术开发在线游戏 你能告诉我一些很好的学习资源吗 包括3D游戏 您可以从新发布的开始Flash平台游戏技术中心 http www adobe com devnet games 在 Adob e Devne
  • BlazeDS 中的多个频道

    我正在尝试设置一个场景 其中 Flex 应用程序将能够使用在实现 BlazeDS 的两个不同 Web 应用程序中编写的资源 我最初尝试这样做在我的 mxml 代码中指定通道集 https stackoverflow com question
  • 如何从Flash/AS3找到用户Temp文件夹的路径?

    如何从 Flash AS3 找到用户临时文件夹的路径 例如 C Users lisnil AppData Local Temp 它需要在任何版本的 Windows 上运行 至少是 XP Vista 和 7 您无法通过 Flash 那样访问文
  • 如何在多个 HTML 页面上播放背景音频?

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

    我想要完成的是调整外部 SWF 的大小 使其适合在舞台上作为容器呈现的显示对象 现在它显示在容器外部 重要提示 我不希望外部 SWF 占据整个舞台 我在舞台上为它准备了一个特殊的地方 那个容器 public function loaderC
  • 视频swf的php正则表达式

    我想从对象 嵌入 html 源获取视频 url 我读到我可以使用正则表达式来获取它 但我和正则表达式不是朋友 这就是我所拥有的
  • 使用 Adob​​e Air 证书签署 Android Native apk

    我需要帮助使用为 Adob e Air 生成的现有 p12 证书来签署 Android 本机应用程序 几年前 应用程序在 Adob e Air 中完成 签名并发布到 Google Play 现在 当从 Adob e Air 迁移到 Andr
  • 在 Flex 中的 Spark TextInput 内添加搜索图标

    我想在 Spark TextInput 控件内添加搜索图标 有没有一种方法可以扩展 TextInput 控件并向其添加一个子控件 Thanks 你不应该延长TextInput本身 Spark 架构的主要功能是剥皮的可能性 您可以根据标准创建
  • 如何使用 flash.filesystem.FileStream [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Will 如何使用flash filesystem FileStream FileStream as文件在哪里 班上flash files
  • 将 Flex ByteArray 转换为 Java byte[]

    我正在尝试将使用 rtmp 协议从 Flex GUI 发送的文件上传到服务器上 我昨天问如何在服务器上发送文件数据 通过rtmps java上传文件到服务器 https stackoverflow com questions 2310855
  • 在 Flash 对象上方显示图像

    我在这里面临着一个棘手的情况 这就是问题 我有一个 Flash 对象 我想在其上显示图像这些是我尝试过的技巧 1 玩转z index 没用 2 将wmode参数设置为透明 不透明 同样没有用 3 使用javascript并仅在页面加载后显示
  • Chrome 更新阻止 Flash 自动播放 - 如何避免?

    我在 html 页面中嵌入了 YouTube 视频 我将 youtube iframe API 与 Flash 结合使用 在我的例子中 我无法使用 HTML5 视频 自上次 Google Chrome 更新以来 Chrome 会阻止自动播放
  • 在 Flex SDK 上叠加 AIR SDK 后出现问题

    我尝试在 Windows 计算机上将 AIR SDK 覆盖到 Flex SDK 上 但之后遇到问题 我尝试覆盖两个 SDK 的多个官方版本 包括 Apache Flex SDK 并按照此处提到的步骤进行操作 http helpx adobe
  • 此 xpath 查询的 Flex/AS3/E4X 等效项是什么?

    鉴于此文档

随机推荐