• Flash/Flex学习笔记(1):Hello World!


    万世开头难,先来一个Hello World!吧,Adobe出了二款支持Action Script3语言的经典开发工具,即:Flash CS 与Flash Builder(以前称为Flex Builder),这二者的关系就好Silverlight中的Blend与Visual Studio

    先来看看Flash中如何玩:

    1.启动Flash CS 4,新建一个"Flash 文件(Action Script3.0)"

    2.保存为HelloWorld.fla

    3.再新建一个ActionScript文件,保存为Person.as(注意要与HelloWorld.fla保存在同一个目录下,否则fla就调用不到as文件了)

    4.Person.cs中敲入以下代码:

    package {
    	public class Person {
    
    		private var _sName:String;//姓名
    		private var _sSayContent:String;//说的内容
    
    		//构造函数
    		public function Person(obj:Object):void {
    			this._sName=obj.name;
    			this._sSayContent=obj.say;
    		}
    	
    		//类的公共方法
    		public function SayHello():String {
    			var _s:String="["+this._sName+"]说:"+this._sSayContent;
    			trace(_s);
    			return _s;
    		}
    	}
    }
    

    注:ActionScript与JavaScript都是从ECMAScript标准发展而来的语言,所以语法比较相似,就不多解释了.

    5.切换到开发人员工作区
    偶是程序员,不是动画设计师,so,换个更习惯的环境,操作如下:

    Flash Cs4-->"窗口"菜单-->"工作区"-->"开发人员"

    在这个工作区下,可以很方便的添加各类基本组件(即.net中的控件)到场景中

    6.拖一个Label到场景中,并设置id为lbl1

    7.添加AS代码

    "窗口"-->"时间轴"

    先把时间轴调出来,然后在第一帧在右击,选择"运作",敲入以下代码:

    var p:Person = new Person({name:"菩提树下的杨过",say:"Hello Flash"});
    
    lbl1.text = p.SayHello();
    
    stop();
    

    这里我们初始了一个json对象做为参数,实例化了一个Person对象,然后调用它的SayHello方法,并把返回值赋值为Label控件,最后的stop()让动画不要循环播放

    Ctri + Enter 运行结果如下:

    源文件下载:

     

    再来看Flash Builder 怎么玩

    1.启用Flash Builder Beta2(好象目前这是最高版本了),新建一个"Flex项目"

    2.拖一个Label控件到设计视图中,同时设置Id为lbl1

    3.新建一个ActionScript文件,并保存为Person.cs,把刚才在Flash中写过的Person.cs代码复制到里面

    其实也就是重用在Flash中写过的代码

    4.切换到源代码视图,参考下图添加代码

    ok了,运行

    小结:做为程序员来讲,肯定会更喜欢Flex的编程方式, 这个与Silverlight/VS的开发比较相似,但是有一个细节要注意,同样的功能用Flex开发生成的swf文件要大出N倍,以本文为例:Flash方式生成的swf文件只有15k,而Flash Builder beta2生成的swf文件居然有100K !(看来Adobe还要继续努力啊)

    作者:菩提树下的杨过
    出处:http://yjmyzz.cnblogs.com
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    Ext JS 6开发实例(三) :主界面设计
    Ext JS 6开发实例(二) :使用CMD创建应用程序
    文件夹或者文件比对工具 Beyond Compare
    LIS问题(DP解法)---poj1631(模板)
    hdoj Max Sum Plus Plus(DP)
    A* 算法详解
    hdoj1043 Eight(逆向BFS+打表+康拓展开)
    hdoj2612 Find a way (bfs)
    luoguP3366 [模板] 最小生成树
    luoguP1196(带权并查集)
  • 原文地址:https://www.cnblogs.com/yjmyzz/p/1680346.html
Copyright © 2020-2023  润新知