您的位置: 首页 > 技术文档 > 多媒体制作 > 关于AS 1.0、AS 2.0和java
flash 8 swf metadata应用 回到列表 SWF 文件安全策略修改器
 关于AS 1.0、AS 2.0和java

作者:xiangming 时间: 2005-10-08 文档类型:原创 来自:向明空间

关于ActionScript 1.0、ActionScript 2.0、java的区别与联系——基于一个实例的讨论

问题:创建两个位置大小颜色各不同的可拖拽的矩形。

方法一:
method1.fla        //ActionScript 1.0
//Flash Player 6(含)以上
//ActionScript 1.0或ActionScript 2.0均可

createEmptyMovieClip ("rectangle1_mc", 1);
rectangle1_mc._x = 10;
rectangle1_mc._y = 10;
with (rectangle1_mc) {
    beginFill (0xff0000, 100);
    moveTo (0, 0);
    lineTo (200, 0);
    lineTo (200, 200);
    lineTo (0, 200);
    endFill ();
}
rectangle1_mc.onPress = startDrag;
rectangle1_mc.onRelease = rectangle1_mc.onReleaseOutside = stopDrag;
//
createEmptyMovieClip ("rectangle2_mc", 2);
rectangle2_mc._x = 50;
rectangle2_mc._y = 50;
with (rectangle2_mc) {
    beginFill (0xffcc00, 100);
    moveTo (0, 0);
    lineTo (400, 0);
    lineTo (400, 100);
    lineTo (0, 100);
    endFill ();
}
rectangle2_mc.onPress = startDrag;
rectangle2_mc.onRelease = rectangle2_mc.onReleaseOutside = stopDrag;

方法二:method2.fla        //ActionScript 2.0
//Flash Player 6(含)以上
//必须为ActionScript 2.0var rect1:Rectangle = new Rectangle (this, 10, 10, 200, 200, 0xff0000, 1);
var rect2:Rectangle = new Rectangle (this, 50, 50, 400, 100, 0xffcc00, 2);
delete rect1;
delete rect2;
delete Rectangle;

此方法必须得有一个Rectangle.as与之同路径。Rectangle.as内容如下:

class Rectangle extends MovieClip {
    private var rectangle_mc:MovieClip;
    public function Rectangle (target:MovieClip, x:Number, y:Number, w:Number, h:Number, color:Number, depth:Number) {
        rectangle_mc = target.createEmptyMovieClip ("rectangle_mc" + depth, depth);
        rectangle_mc._x = x;
        rectangle_mc._y = y;
        with (rectangle_mc) {
            beginFill (color, 100);
            moveTo (0, 0);
            lineTo (w, 0);
            lineTo (w, h);
            lineTo (0, h);
            endFill ();
        }
        rectangle_mc.onPress = startDrag;
        rectangle_mc.onRelease = rectangle_mc.onReleaseOutside = stopDrag;
    }
}

方法三:method3.java    //如果.java也可以直接编译.swf的话

public class method3{
    public static void main(String[] args){
        Rectangle rect1 = new Rectangle (this, 10, 10, 200, 200, 0xff0000, 1);
        Rectangle rect2 = new Rectangle (this, 50, 50, 400, 100, 0xffcc00, 2);
        //这里就不需要手动delete了,因为java有垃圾回收器,它会自动清除。
    }
}
class Rectangle extends MovieClip {
    private MovieClip rectangle_mc;
    public Rectangle (MovieClip target, Double x, Double y, Double w, Double h, Double color, Double depth) {
        rectangle_mc = target.createEmptyMovieClip ("rectangle_mc" + depth, depth);
        rectangle_mc._x = x;
        rectangle_mc._y = y;
        with (rectangle_mc) {
            beginFill (color, 100);
            moveTo (0, 0);
            lineTo (w, 0);
            lineTo (w, h);
            lineTo (0, h);
            endFill ();
        }
        rectangle_mc.onPress = startDrag;
        rectangle_mc.onRelease = rectangle_mc.onReleaseOutside = stopDrag;
    }
}

通过比较不难发现,ActionScript 1.0最灵活、最简单、最容易理解。但重复类似的操作时也会最繁琐。如果要画1000个位置大小颜色各不同的矩形的话,不累死也会被笑死!
ActionScript 2.0则非常系统,单独用Rectangle.as定义了一个矩形类,使用时new即可,爽!有点小小的遗憾的是有几行delete,当然你也可以不加,让它永远霸占你的内存。
再看看java,看完了又看,看完了再看,呵呵! 啥也不说了,谁老大肯定有人知道。

出处:向明空间
责任编辑:moby

◎进入论坛Flash专栏版块参加讨论

相关文章 更多相关链接
Java学习指南
Tomcat配置技巧Top10
AS3.0概要–了解AS3.0的改变
可控声音 flash 教程
Actionscript animation 简明教程
热门搜索:CSS Fireworks 设计比赛 网页制作 Dreamweaver Studio8 Flash
站点最新 站点最新列表
跟我去香港:The third Day
单件模式结合命令链模式
快乐狗原创动漫大赛
元素层叠级别及z-index剖析
CSS 浏览器的等宽空格
电影变形金刚概念画欣赏
疯狂的程序员 第三十五回
疯狂的程序员 第三十四回
疯狂的程序员 第三十三回
运用ASDoc工具
栏目最新 栏目最新列表
火星人的耳机
公司正式宣布创业失败
用corelDEAW 12打造唇膏
二行代码解决全部网页木马
一行代码解决iframe挂马
Photoshop制作星空爆炸效果
CorelDraw 12打造休闲裤
Firework如何画特殊的切角图形
Firework打造韩式风格的手提袋
flash实例:打造佛光效果
 

蓝色理想版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。

特别注意:本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有,文章若有侵犯作者版权,请与我们联系,我们将立即删除修改。

本文现有 4 条评论 评分:- llllllllllllllllllll + 评分人数: 1 ,平均分: 1.00


快不行了8888 Publish at 2005-10-10 18:44:53 评分1
可笑的结论 as1同样可以用循环和数组实现同样精简的代码 1000个1w个又怎么样了? 是否重复劳动是人的问题 根本不是开发工具的问题 难道没有2。0,以前的人就不会做软件了?
panliu888 Publish at 2005-10-10 0:27:04
To kyan:
这个method3.java是作者为了说明而想象出来的吧, 你就不要编译了, 再说 java 有 with(){} 语句?
mjking Publish at 2005-10-9 15:15:56
谁老大?ECMA4是老大。Java也是遵从此工业标准。
kyan Publish at 2005-10-9 14:14:57
java编译出错
第14行 with()后面需要‘;’
是怎么回事儿?
您的评论
用户名:  口令:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册 为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
不评分 1 2 3 4 5
注意:请不要在评论中含与内容无关的广告链接,违者封ID
请您注意:
·不良评论请用报告管理员,以利管理员及时删除。
·尊重网上道德,遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·本站评论管理人员有权保留或删除其管辖评论中的任意内容
·您在本站发表的作品,本站有权在网站内转载或引用
·参与本评论即表明您已经阅读并接受上述条款
推荐文档 | 打印文档 | 评论文档 | 报告错误  
专业书推荐 更多内容
大师之路--Photoshop 完全解析
《超越CSS》新书上市
Don't Make Me Think 第2版
HTML与CSS入门经典(第7版)
《FLASH MX2004网站开发精粹》
《CSS入门经典》
《设计师谈网页设计思维》
作品集 更多内容

婚纱影楼 蜕变视觉 湖南在线技术团队(华声动力)个站 eassol logo设计 天光云影 joost中国logo设计 SmartPhotoLuckyDrawEvent ICON-CAR