FlashDevelop+aswing开发AS2程序
最近在学aswing(aswing是一个开源的as UI框架,结构模仿java的swing,具体可以到(http://aswing.org/),由于我的机器配置不是太高,并且也是处于入门阶段不是搞什么大程序,所以选用了FlashDevelop作为编程环境,FlashDevelop的优点是体积小巧使用简单,在这里我针对初学者讲讲我使用FD的方法。
mtasc
mtasc是一个开源的actionscript编译器,它可以吧as文件编译成swf,然而mtasc与mmc(macromedia flash官方的编译器)有些区别(具体不同请看这里),所以造成了依照mtasc规则写的程序可能与mmc不兼容。
使用mtasc有很多好处
他速度快可以在很短的时间里编译大量的as类文件,开源免费,更适合开发人员(对于一个纯开发的人员,似乎不需要用到时间轴吧),等等
为什么要使用aswing?
由于使用mtasc编译,没有像flashIDE中可以方便的用画图工具绘制自己的界面,而如果自己用绘图库写界面也太累了
aswing能让我们快速的构建用户界面,使用aswing就可以在脱离flashIDE的情况下快速的开发出强大的用户界面(比flash自带的v2组件要强很多)。
再说一下为什么要使用用FlashDevelop(下面简称为FD)
其实使用aswing并不一定要使用FD,不过aswing必须使用mtasc编译。
有一个更好的开发环境那就是 Eclipse+ASDT/FDT+MTASC+Flashout,这是个基于Eclipse的开发环境,非常强大,不过由于需要一些配置过程(配置方法可以参考这里),并且Eclipse占用的系统资源要比FlashDevelop大。
而FD已经集成了mtasc下载安装即可,无需另外配置,当然功能肯定没有Eclipse来的强大,但是作为一般的学习使用还是挺适合的,关键是小巧速度快。
下面就开始说具体的使用方法
首先下载安装FlashDevelop,最新版本注意安装FD需要有.net运行环境
下载aswing,将org这个文件夹放到你专放as类库的文件夹中,比如我方的地方是 K:\actionscript\(记住这个路径哦,后面还要用到)
启动FD,我们先创建一个项目 test
点击 Project->New Project->选择Empty Project,下面是Project Name就填test好了,然后选择一个路径来存放你的项目,可以选中Create directory for project来让FD为我们建一个目录,然后点OK。这样我们的项目就建好了。
接着我们建一个as类文件Test.as,方法是右键test项目->add->New Class 如下图
起名为Test,点ok后FD就会创建一个as文件,并且已经为我们写好了类名与构造函数
在开始写代码之前还有几件事
1、将Test类设为Always Complie,这样FD就知道要编译这个类了,右键Test.as选择Always Complie即可
2、设置项目属性,右键Test项目->Properties,现在Movie中设置swf的一些属性,包括输出的swf文件名、背景、帧频等,其他选项卡的设置稍后说。
然后我们输入代码
代码: |
class Test { function Test() { trace("hello world"); } public static function main() { var test:Test = new Test(); } } |
这是个最简单的输出hello world的类,一般用mtasc编译的,使用一个public static function main()函数作为程序入口,也就是说一运行就会调用这个静态main方法,在main方法中我们创建了一个新的Test类的实例test,test被创建后,构造函数里就会输出hello world
右键test项目->Test Movie
FD就会调用mtasc去编译这个类文件,很快我们就会看到一个空白的画面(因为swf画面上什么都没有。。),然后可以在下面的Output面板中看到输出的hello world
好了,现在我们会用FD了,接下来演示一个简单的aswing程序,关于aswing,我也是一个初学者,不能提供很好的教程,代码只能稍微说一下,无法详细解释,大家可以到aswing的官方网站上看教程和API文档
类路径:
首先我们要将我们放类库的目录添加到类路径中,还记得我把aswing放在哪里了么? 是 K:\actionscript
右键Test项目->Properties点击Classpaths选项卡,点击Add Classpath 将 K:\actionscript添加进去
当然也可以添加一个全局的类路径,使任何项目都能使用 , 在 Tools->Global Classaths中添加
现在将我们的Test类中的代码改成如下代码
代码: |
import org.aswing.JFrame; // 导入JFrame类
class Test extends JFrame // Test类继承JFrame |
这里我建立了一个Test类继承JFrame来演示,JFrame是aswing中的一个窗体组件,我写了注释,具体使用方法去看官方API文档吧。
写完后Test Movie,编译完成后我们就会看到一个窗口啦,哈哈
好了,就到这里吧,大家应该会使用FD了吧,关于aswing还是需要一点点的学起来,一起努力吧。
如果说以后是AS3的时代,AS2很快要淘汰了,那么很高兴的告诉你,据aswing的开发着iiley说,不久就会放出aswing的as3版本,大家一起期待把,哈哈
另外,aswing是一个优秀的开源类库,不管AS2淘不淘汰,有空翻出aswing源代码来研究研究也是会学到很多东西的。
FlashDevelop+aswing开发AS2程序相关推荐
- FlashDevelop Android开发.md
2019独角兽企业重金招聘Python工程师标准>>> FlashDevelop Android 开发 > author: gwang(wanggangzero@qq.com) ...
- 使用IDEA开发Servlet程序
JavaWeb系列教程,持续更新 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造S ...
- 用什么服务器开发小程序,开发小程序用什么服务器系统
开发小程序用什么服务器系统 内容精选 换一换 按照翻译方式的不同,高级语言通常可以分为两类:一类是编译翻译,一类是解释翻译,分别对应着编译型语言和解释型语言.编译型语言典型的如C.C++语言,都属于编 ...
- 使用NetBeans IDE开发C程序
使用NetBeans IDE开发C程序 在windows下开发调试linux环境的代码,同时还可以拷贝到Linux环境. 其实是NetBeans可以连接到远程Linux服务器,使用其中的GNU编译环境 ...
- flutter开发小程序_为什么我认为Flutter是移动应用程序开发的未来
flutter开发小程序 I dabbled a bit in Android and iOS development quite a few years back using Java and Ob ...
- Android开发之程序猿必需要懂得Android的重要设计理念2(5.20更新版)
上篇文章介绍了Android开发的设计理念的一部分,并没有得到博友们的多大认可,仅仅看到了一位博友在以下留言期待下一篇文章的发表,为了这小小的唯一支持.我决定继续把后面的8个要点介绍一下,自己也潜心反 ...
- 用JSP+JDBC开发Web程序
以前一直想找个纯粹的JSP+JDBC开发Web程序的架构,一直没有找到合适的,后来自己写了一个简单实现,并实施了几个项目. 此开发架构的特点是: 1.架构技术简单,只包含JSP和JDBC,不需要学习即 ...
- mpvue开发小程序所遇问题及h5转化方案
项目结构 |---build|---pages.js文件目录|---src|---component子组件|---pages|---业务页面|---store,vuex储存|---utils|---请 ...
- 你也可以玩转Skype -- 基于Skype API开发外壳程序入门
原文:你也可以玩转Skype -- 基于Skype API开发外壳程序入门 Skype是目前这个星球上最厉害的IM+VOIP软件,Skype现在已经改变了全球2.8亿人的生活方式.你,值得拥有! :) ...
最新文章
- 将Project的内容导出成单独的XPO文件
- R语言使用ggplot2包使用geom_violin函数绘制分组小提琴图(配置显示均值、标准偏差)实战
- linux下运行gnuplot,Gnuplot Linux版下载
- Scala带返回值函数声明示例
- urllib2 python3错误?用from urllib import request来代替!
- 去 BAT 面试,总结了这 55 道 MySQL 面试题
- python颜色识别算法_纯Python编写K-means算法,提取图片中的主体颜色
- zabbix3.2通过snmp v2采集Dell服务器iDRAC口信息监控硬件
- 寻求生态保护与矿产开发平衡点 青海给出“绿色方案”
- EXCEl快速删除大量空白行
- 面对技术难题,都是硬着头皮向前冲
- 汉字区位码查询与算法
- Frank计算机基础硬件笔记
- ERP系统实施一般方法与步骤
- UTC(世界标准时间)/GMT(格林威治时间)/CST(北京时间)
- python spearman相关系数_常用的特征选择方法之 Spearman 秩相关系数
- 嵌入式linux IIO驱动
- PS_变量批量生产名片
- 在MFC对话框中使用Google地图
- 从0到1搭建大数据平台之监控