`
Zhoumx
  • 浏览: 72391 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Flash CS3编程

阅读更多

 今天公司要做个关于flash方面的东东,以前只知道flash,没接触过,看过美工做过flash,的确很漂亮,但都是静态的。但现在要做flash编程,开始是真的从心底叫苦,苦啊,没办法,苦要也做,那就做把,上网查了些资料,还参考了其他一些书籍,还是搞了点点名堂,哈哈。具体做法是:(我是基于Flash CS3来编程的,听说CS3和CS2有很大区别,不是很清楚)

1.step_1:在FlashCS3平台下新建一个Flash文件:

2:step_2:在当前时间轴上画布上画个正方形,画满。(可以省去)

3.step_3:在当前画布上画个10*10的蓝色的小正方体,选择-》Modify->convert  to symbol (或者F8) 转为元件到如下图:

取个名把:Square(正方形),OK就可以了。

然后看到库面板,如看不到Window->Library(Ctrl+L)如图:

右键点击Square,选择Linkage,打开如下面板:

勾选Export for ActionScript,Import for runtime sharing,在Class处填写类名Square,Ok完毕

到时候就可以直接new Square();来创建元件了。这里先在舞台画布上点击元件,然后delete,删除掉。

4.step_4:在关键帧上按F9或者右键点击选择Actions打开编程窗口。

4.1在这里写如下代码:

var square:Square = new Square();
square.x=400;
square.y=200;
addChild(square);

 

按Ctrl+Enter运行就可以看到结果了,画布上把Square画出来了。我第一感到好神奇。

4.2现在做个从外部传参数的例子:

//从网页取得参数
var xpoint = loaderInfo.parameters["x"];
var ypoint = loaderInfo.parameters["y"];


var square:Square = new Square();
//int(param);将param转为整数
square.x=int(xpoint);
square.y=int(ypoint);
addChild(square);

 然后写个html文件:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="366" height="400" id="map">
	      	<param name="menu" value="FALSE" />
	      	<param name="src" value="test.swf" />
	      	<param name="allowFullScreen" value="always" />
			<param name="flashvars" value="x=321&y=123" />
	      	<embed src="test.swf" menu="false" allowFullScreen="true" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" width="366" height="400" name="map" bgcolor="#555555" flashvars="x=321&y=123"></embed>
	    </object>

 

 4.3再写个向服务器传参数的例子:

 

 

//从网页取得参数
var xpoint = loaderInfo.parameters["x"];
var ypoint = loaderInfo.parameters["y"];


var square:Square = new Square();
//int(param);将param转为整数
square.x=int(xpoint);
square.y=int(ypoint);
addChild(square);

square.addEventListener(MouseEvent.CLICK, clickHandler);

function clickHandler(event:Event):void{
	var _x:int = event.target.x;
	var _y:int = event.target.y;
	
	var url:String = "flash.do";
	//创建请求对象
	var request:URLRequest = new URLRequest(url);
	
	//包装参数
	var variables:URLVariables = new URLVariables();
	variables.xp = _x;
	variables.yp = _y;
	request.data = variables;
	request.method=URLRequestMethod.GET;
	navigateToURL(request, "_blank");
	
	/**
	//去掉navigateToURL(request, "_blank");
	//这种方式可以向服务器发送数据并能装载返回的数据
	var loader:URLLoader = new URLLoader();
	loader.addEventListener(Event.COMPLETE, connectHandler);
	loader.load(request);
	*/
	
}

在服务器就可以request.getParameters("xp"); request.getParameters("yp"); 

 

呵呵,这里只做了个简单的测试,没有深入这些机制,以后再发。

分享到:
评论
2 楼 Zhoumx 2008-10-16  
缩略图之类的功能。而不是javascript的效果
mrkai 写道

Libra Man: 可否发表一个关于flash图片编辑的思路出来,flash能否在客户端实现图片水印,缩略图之类的功能。而不是javascript的效果,恳请楼主赐教!

非常抱歉不能给建议。我也刚接触Flash As3,也是项目要用,然后找了些代码写写,纯粹是留做笔记。
1 楼 mrkai 2008-10-13  
Libra Man:

可否发表一个关于flash图片编辑的思路出来,flash能否在客户端实现图片水印,缩略图之类的功能。而不是javascript的效果,恳请楼主赐教!

相关推荐

Global site tag (gtag.js) - Google Analytics