或许我还是对flash了解不够深,虽然用它好多年了....还没有发现有更好的办法,例如flashDll,我就不知道怎么用才更好,可以达到他说的那样的可以使文件小很多。
他的做法是把很多在多个flash中使用的代码打包进一个swf里面去,然后给不同的swf调用,从而达到减小体积的目的。
但是我觉得即使是加载进行,但是在代码里进行了声明,最后还是会把代码编译进来,结果是体积还是没有减小.....(或许我这样说还是会有很多人不明白的.....具体看代码和效果吧)
程序代码
package
{
import flash.display.Sprite;
import flash.display.Loader; import flash.events.Event;
import flash.system.LoaderContext;
import flash.net.URLRequest;
import flash.system.ApplicationDomain;
import flash.utils.getDefinitionByName;
[SWF (width=800, height=600)]
public class Main extends Sprite
{
private var loader:Loader;
public function Main()
{
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoader);
loader.load(new URLRequest("dll/AsWingDLL_1_3_0.swf"),
new LoaderContext(false, ApplicationDomain.currentDomain));
}
private function onLoader(event:Event):void
{
var mangerClass:Class = getDefinitionByName("org.aswing.AsWingManager") as Class;
mangerClass["initAsStandard"](this);
var frameClass:Class = getDefinitionByName("org.aswing.JFrame") as Class;
var frame:Object = new frameClass(this,"测试反射");
var paneClass:Class = getDefinitionByName("org.aswing.JScrollPane") as Class;
var pane:Object = new paneClass();
var aertClass:Class = getDefinitionByName("org.aswing.JTextArea") as Class;
var art:Object = new aertClass();
//增加多行文本
pane["append"](art);
frame["setContentPane"](pane);
frame["setSizeWH"](400, 300);
frame["show"]();
}
}
}
效果图
很明显,可以看到体积非常小,
当然,有个AsWingDLL_1_3_0.swf文件是200k的,当然,你也可以加载网络上的代码库
如果不利用反射,直接在flash里进行声明,那么代码会变得大很多,有心人可以重写onLoader方法里的代码。不利用反射,直接new对象
老规矩,还是给上源代码
点击下载此文件
分享到:
相关推荐
创建AsWing项目的初始步骤包括使用FlexBuilder新建一个ActionScript项目,命名为"HelloScheme",并确保在库路径中包含了AsWing库或AsWing.swc文件。 在HelloScheme主类中,我们看到AsWingManager被用来初始化AsWing...
ASwing,全称为ActionScript Swing,是Adobe Flex SDK中的一个组件库,用于在ActionScript 3.0项目中创建桌面应用程序。它模仿了Java Swing API的结构和功能,为Flex开发者提供了一种创建桌面GUI(图形用户界面)的...
AsWing AEON皮肤实例是针对AsWing框架的一个特定主题,主要涉及用户界面的定制化和美化。AsWing是一款流行的Java Swing开发库,它提供了丰富的组件和强大的功能,帮助开发者构建美观、高效的桌面应用程序。Aeon皮肤...
ASwing2.0 SRC是一个针对ASwing库的源码版本,它为开发者提供了一种深入理解和定制ASwing的可能性。ASwing本身是一个ActionScript框架,它模仿了Java Swing的设计,为Flash和Flex应用提供了丰富的组件库,使得在这些...
【AsWing UI源码】是一个面向AS3(ActionScript 3)开发者的UI库,提供了丰富的用户界面组件和工具,旨在简化AS3中的图形用户界面(GUI)开发。这个库不仅包含了完整的源代码,还附带了GUI编辑器,方便开发者设计和...
- **简介**:AsWing是一个用于ActionScript 3的轻量级UI框架,设计目标是提供一个类似Java Swing的组件模型。它使开发者能够构建复杂的用户界面,同时保持代码的简洁性和可维护性。 - **组件体系**:AsWing提供了...
`JMenuItem`是Swing提供的菜单项组件,在AsWing中,它不仅是一个组件,也是一个容器。它通常用来表示菜单中的可选项,并且可以有子菜单。`JMenuItem`可以与`JMenu`配合使用来构建菜单结构。此外,`JMenuItem`还可以...
Aswing是一个轻量级的图形用户界面(GUI)库,它为Java开发者提供了一种创建美观、交互式的应用界面的方式。在这个教程中,我们将深入探讨Aswing皮肤的工作原理,以及如何通过一系列步骤来设计和应用自定义皮肤。 ...
- **初识ASWING**:本节通过一个简单的“Hello 日程”应用,让开发者初步了解AsWing的基本使用方法,包括项目的搭建、基础组件的使用等。 #### 3. 创建主界面 - **规划主界面**:介绍如何规划和设计应用程序的主...
"aswing_a3_1.3.2_allinone" 是一个特定的软件包或库的版本标识,其中包含了ASwing、A3以及1.3.2这些关键元素。ASwing可能是一个基于Java Swing的开源图形用户界面(GUI)框架,A3可能是该框架的一个子项目或组件,...
ASwing 是一个基于 Java Swing 的开源项目,它的版本1.5为我们带来了许多增强的功能和改进。Swing 是 Java 标准库中用于构建图形用户界面(GUI)的一部分,而 ASwing 则是对其的一种扩展,提供了更丰富的组件、更...
主要是解决aswing 换肤问题,用flex 生成的xml 转成对应的aswing代码
aswing API,与AsWing Book.pdf一起使用
ASwing包是专门为在Flash9环境下使用ActionScript 3.0(AS3.0)进行编程设计的一个辅助工具集。这个工具集旨在提供一个类似Java Swing的开发框架,使得AS3.0的开发者能够更加方便地创建复杂的交互式应用程序。在...
用实例讲述aswing的入门,用一个日程管理的例子,详细的讲述了aswing的开发过程,注意从Google下载aswing源代码的时候下载1.0的swc就可以了,flex环境
- **JPanel**:在AsWing中,`JPanel`扮演着一个非常重要的角色,作为容器组件,它能够容纳其他GUI组件。在设置`JPanel`时,可以通过`setOpaque(boolean opaque)`方法来控制面板是否透明。 ### 2. JWindow与AsWing...
aswing类库的下载,可以让大家使用现成的布局来显示对象很简单很方便
在本文中,我们将深入探讨如何使用ASwing更换皮肤,这是基于Adobe Flash CS5.5和ASwing 2.0库的一个实例。ASwing是ActionScript 3.0中一个强大的UI组件库,它允许开发者创建出类似Java Swing的用户界面。在2011年的...
AsWing Book.pdfAsWing Book.pdfAsWing Book.pdfAsWing Book.pdf
ASWing实现中拖放是一项在图形用户界面(GUI)编程中常见的功能,它允许用户通过鼠标操作将一个对象从一处拖动到另一处,从而实现数据或组件的转移。ASWing是一个开源的Java库,它扩展了Swing框架,提供了更多的功能...