找了很多的想用Alert.show()的提示框,问了一群人,都说用Alert就可以了。但是前提是你用的版本是ActionScript2.0如果是3.0肯定里面是没有的。
我发现Flex用AsWing不错,只是多一些包。而且写起来有点像Swing了.不错哈。
ActionScript3.0简介
ActionScript3.0 是Adobe公司为基于flash player 平台开发的一种脚本语言,开发者可以使用其开发出基于flash player运行的多媒体应用程序。
为什么选择AsWing 以及 AsWing
请参考,《AsWing介绍文档》。
环境准备
说白了AsWing就是一套用AS3写成的类库,所以只要有编译AS3程序的环境,就能使用AsWing。
从编译环境来说基本就是2种,一个是Flash CS3,另一个就是 flex sdk。开发工具就很多了,官方的有 FlashCS3,Flex Builder(推荐用FB3),或者使用开源的FlashDevelop(支持使用flash和flex sdk编译),甚至手动调用mxmlc编译。
有了开发环境,那么我们就要下载AsWing开发包,并且配置我们的开发工具。
可以到 http://code.google.com/p/aswing/downloads/list 下载AsWing开发包。
找到 aswing_a3_1.2_fx.zip 或 aswing_a3_1.2_fl.zip 其中 1.2 表示版本号,一般下载最新的就行。后面的 fx 或 fl 代表适合的编译环境。一般如果用flex sdk的话就下载fx结尾的包。用flashCS3的话就下载fl结尾的。
当然你也可以通过svn客户端取出最新的AsWing代码,具体方法就不再赘述了,svn地址见:http://www.aswing.org/?page_id=4 。
下面具体介绍下在FlexBuilder3和FlashCS3中的配置方法。其他工具雷同。本人使用Windows操作系统,其他系统下的操作方式基本一致。
-
FlexBuilder3:
将压缩包解压后,找到里面的aswing_a3_1.2.zip,解压,将 AsWingA3/bin 目录中的 AsWingA3.swc 复制到你存放AS代码库的目录。比如我将其放在 E:/AS3 目录中。然后再FB3中新建一个ActionScript项目,右键该项目打开项目属性窗口,选择ActionScript Build Path,然后切换到 Library path,点击 Add SWC… 浏览到刚才复制的那个文件,按照我刚才存放的路径就是 E:/AS3/AsWingA3.swc,然后点击OK即可。
-
Flash CS3
同样先解压然后找到aswing_a3_1.2.zip并解压,由于Flash IDE不支持使用纯AS打包的SWC作为编译库路径,所以我们先将AsWingA3整个目录复制到所需位置,如 E:/AS3。
然 后打开Flash CS3,点击菜单栏中的 编辑 并打开 首选参数窗口点击左边列表中的ActionScript,然后点下方的 ActionScript 3.0 设置… 打开类路径设置窗口,将AsWing的src目录添加进去,按照我的文件路径就是将 E:\AS3\AsWingA3\src 这个路径添加进去,然后点确定就可以了。
P.S.当然FB3也可以使用目录作为编译路径,就是在Library path 旁的 Source path中添加一个 AsWing的src目录。
第一个例子-Hello World!
FB中在刚才建的ActionScript项目中新建一个ActionScript class文件,输入下面的代码。
package {
import flash.display.Sprite;
import org.aswing.AsWingManager;
import org.aswing.FlowLayout;
import org.aswing.JButton;
import org.aswing.JFrame;
import org.aswing.JOptionPane;
import org.aswing.event.AWEvent;
public class HelloAsWing extends Sprite {
private var myFrame:JFrame;
private var myButton:JButton;
public function HelloAsWing() {
AsWingManager.initAsStandard(this);
myButton = new JButton("Click Me");
myButton.addActionListener(__buttonClicked);
myFrame = new JFrame(this, "My Frame");
myFrame.getContentPane().setLayout(new FlowLayout());
myFrame.getContentPane().append(myButton);
myFrame.setSizeWH(300, 200);
myFrame.show();
}
private function __buttonClicked(e:AWEvent):void {
JOptionPane.showMessageDialog("Hello", "Hello, World!");
}
}
}
如果是使用Flash CS3,可以先新建一个ActionScript文件,输入代码后,保存为HelloAsWing.as,然后新建一个Flash (ActionScript3.0)文件,将该fla文件保存在与HelloAsWing.as的同一级目录中,然后将fla的文档类设置为 HelloAsWing。
运行后可以看到类似这样的界面,你可以试着对该窗口进行各种操作:
点击 Click Me 按钮后,会弹出一个提示窗口,如下图:
这就是使用AsWing创建UI组件的一个非常简单的实例程序,下面我们简单分析一下该程序的代码。
实例详细分析
使用AsWing,主程序不需要基于任何应用程序框架,AsWing的UI组件都从flash原生的Sprite扩展而来,所以几乎每一个AsWing组件都能被单独放到DisplayObjectContainer中并能正常使用。
我们的主程序仅需继承Sprite即可,下面分析一下构造函数中的代码。
AsWingManager.initAsStandard(this);
建议在使用AsWing程序之前先调用这个方法,该方法封装了一些常用功能,调用了AsWingManager
的setRoot方法,用于设置容纳AsWing组件的容器,这里的this就代表了当前AsWing组件的root。另外还会设置一些系统参数,如 align,scaleMode等。
myButton = new JButton("Click Me");
myButton.addActionListener(__buttonClicked);
JButton 是AsWing中基本的按钮组件,这里新建了一个JButton实例,并设置按钮的Label,第二句代码给按钮添加一个事件监听,当点击按钮后就会触发,这里的addActionListener
是AsWing设计成简化了事件监听的写法,当然也可以写成这样 myButton.addEventListener(AWEvent.ACT,
__buttonClicked);。
AwEvent
是AsWing中最基本的事件类,ACT事件类型表示一些基本组件的触发事件类型,如JButton的鼠标点击事件,JTextField的回车事件等。这里按钮点击后就会执行 __buttonClicked
事件处理函数,函数中代码稍后讨论。
myFrame = new JFrame(this, "My Frame");
myFrame.getContentPane().setLayout(new FlowLayout());
myFrame.getContentPane().append(myButton);
JFrame是常用的窗口组件,有类似操作系统窗口的基本特性,如最小/大化,关闭,缩放,拖动能功能。JFrame的第一个参数指示该窗口所在的容器,第二个参数设置窗口头部的label(即title)。
getContentPane()
方法获取JFrame容纳其他组件的容器,向JFrame中添加组件记得不要直接调用JFrame
的append
方法,JFrame 真正容纳其他组件的不是本身,而是其内部的一个容器,用getContentPane()
方法获取。
每个容器排列组件的方式都由Layout控制,setLayout就是设置容器的布局方式,关于布局请参考《AsWing布局管理入门》。
然后就是调用容器的append方法将刚才的按钮加入到JFrame的容器中。
myFrame.setSizeWH(300, 200);
myFrame.show();
这两句代码就比较简单了,设置JFrame的尺寸,并让JFrame显示出来。可能你发现没有使用addChild方法,没关系,JFrame继承 JPopup,所有基于JPopup的组件,AsWing都会自动替你添加到DisplayList中,调用show() 方法就可以设置为可见。
下面看下很简单的事件处理函数
private function __buttonClicked(e:AWEvent):void {
JOptionPane.showMessageDialog("Hello", "Hello, World!");
}
JOptionPane
是一个类似Alert的组件,showMessageDialog()
方法即显示一个消息框,第一个参数为消息框的title,第二个参数设置消息内容的字符。
结束语
如今基于flashplayer的RIA技术非常流行,要开发这样的应用程序就免不了会用到与用户交互的UI组件,AsWing正是这样一套强大的组件 库,提供了常用的基本组件,开发者也可能很容易扩展出自己特制的组件。AsWing的灵活使得开发者不会被特定的条件约束,你可以在整个项目中完全使用 AsWing作为GUI交换组件,也可以仅把AsWing的某一个组件用在你的项目中,帮助你快速的得到所需的UI界面。
AsWing的开发者还在不断的改进AsWing,使其更强大,易用。
本文仅介绍了最基本的AsWing使用,其更多强大的性能正等着你来发掘,请参考其他AsWing相关教程。
下载资源
参考资料
分享到:
相关推荐
《ActionScript 3.0 语言和组件参考》概述 《ActionScript 3.0 语言参考》是 Flash® Player 和 Adobe AIR™ 应用程序编程接口 (API) 的参考手册。 此版本包括支持 Adobe AIR 运行时环境的新 ActionScript 类、...
第1篇 ActionScript3.0语言基础 第1章 ActionScript3.0概述 第2章 搭建ActionScript3.0开发环境 第3章 ActionScript3.0语法 第2篇 ActionScript3.0面向对象特性 第4章 ActionScript3.0面向对象编程 第...
《Flash ActionScript3.0教程示例(从入门到精通)》是一本全面解析ActionScript3.0编程语言在Flash平台上的应用的教程。ActionScript3.0是Adobe Flash Professional中的核心编程语言,用于创建交互式动画、游戏、富...
《ActionScript3.0 Game Programming》是一本专为游戏开发者设计的权威教程,中文版的出版使得更多中国读者能够深入理解和掌握ActionScript3.0在游戏开发中的应用。这本书不仅覆盖了ActionScript的基础语法和面向...
ActionScript 3.0 是Adobe开发的一种编程语言,主要用于创建交互式内容,特别是在Flash和Flex平台上。这个“ActionScript 3.0 宝典”很可能是一本全面介绍该语言的教程,适合初学者和有一定经验的开发者。PDF版本...
ActionScript 3.0是Adobe Flash Professional、Flash Player以及Adobe AIR中的主要编程语言,用于创建交互式内容、游戏和富互联网应用程序(RIA)。本教程针对ActionScript 3.0的动画制作进行了深入讲解,旨在帮助...
ActionScript3.0是Adobe开发的一种面向对象的编程语言,主要用于创建富互联网应用程序(RIA),尤其是在Flash平台上。它是Flash Professional、Flash Builder等工具的核心组成部分,让开发者能够为网页、桌面和移动...
ActionScript 3.0 是Adobe开发的一种面向对象的编程语言,主要用于创建富互联网应用程序(RIA,Rich Internet Applications),尤其是在Flash平台上。它极大地提升了Flash Player和Adobe AIR应用的性能和功能,使得...
鉴于ActionScript 3.0较之前版本的变化,为了适应更多的读者,本书没有过多强调ActionScript 3.0与ActionScript 2.0的区别,而是直接从ActionScript 3.0的语法结构、编写习惯开篇,由浅入深展开讲解。第1~5章介绍了...
《Foundation ActionScript 3.0 Animation》是一本...《foundation Actionscript3.0 Animation.pdf》这个文件很可能是这本书的电子版,包含完整的章节内容和可能的练习案例,对于自学或者参考来说是非常宝贵的资源。
ActionScript 3.0是Adobe Flash Professional和Flex SDK中用于创建富互联网应用程序(RIA)的主要编程语言。在“ActionScript 3.0动态绘制正弦曲线”这个项目中,开发者利用了AS3的强大功能来创建可视化图形,特别是...
【ActionScript 3.0详解】 ActionScript 3.0是一种强大的编程语言,主要用于实现Flex应用的业务逻辑和控制,与MXML一起构成了Flex应用程序开发的基础。ActionScript 3.0在Flash Player运行环境中执行,借助...
【ActionScript 3.0完全自学手册】电子教案详述了ActionScript 3.0这一编程语言的基础知识,包括它的历史、特点、新特性以及在Adobe Flash CS3中的应用。ActionScript 3.0是在Adobe Flash CS3和Flex 2.0发布时同步...
《ActionScript3.0 Cookbook中文版》是一本专注于ActionScript3.0编程技术的实践指南。ActionScript是Adobe Flash平台上广泛使用的脚本语言,尤其在创建互动内容、游戏和富互联网应用程序(RIA)中扮演着核心角色。...
本书详细地介绍了 actionscript 3.0的基础知识,包括 actionscript 3.0语言、actionscript 3.0对象的操作方法、显示列表的使用、事件模型、加载外部素材、可视化编程以及利用声音和视频增强应用程序等方面的知识,并...
在解压后的“ActionScript3.0chm完整版”文件中,你将找到详细的API参考、教程和示例代码,这些都能帮助你掌握ActionScript 3.0的核心概念和技术。无论是学习基本语法、类库使用,还是深入到高级特性,这个文档都是...
【ActionScript 3.0 知识点详解】 ActionScript是一种强大的脚本语言,最初由Macromedia开发,主要用于Adobe Flash平台,目前的最新版本是3.0。ActionScript 3.0(AS3)是一种面向对象的编程语言,基于ECMAScript...
《Flash ActionScript 3.0动画教程》是一本专为学习和掌握Flash中ActionScript 3.0编程语言而设计的教程,特别适合对动画制作和互动设计感兴趣的读者。ActionScript 3.0是Adobe Flash Platform的核心编程语言,它的...
ActionScript3.0中虽然没有内置的缓动函数库,但可以通过第三方库如TweenMax或GreenSock轻松引入。 7. **事件监听器**:添加事件监听器来响应用户的交互,例如鼠标点击或拖动,可以动态控制图片的旋转。 8. **显示...