<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[wind - Flash]]></title>
<link>http://feng.kiyeer.net/</link>
<description><![CDATA[创造机会的人是勇者；等待机会的人是愚者]]></description>
<language>zh-cn</language>
<copyright><![CDATA[Copyright 2005 PBlog3 v2.8]]></copyright>
<webMaster><![CDATA[yong8868@163.com(wind)]]></webMaster>
<generator>PBlog2 v2.4</generator> 
<image>
	<title>wind</title>
	<url>http://feng.kiyeer.net/images/logos.gif</url>
	<link>http://feng.kiyeer.net/</link>
	<description>wind</description>
</image>

			<item>
			<link>http://feng.kiyeer.net/article.asp?id=269</link>
			<title><![CDATA[TextArea组件]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Wed,03 Sep 2008 15:09:17 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=269</guid>
		<description><![CDATA[<strong>Flash - textarea组件的背景边框设置</strong><br/><br/>TestArea组件背景透明，边框也透明。 <br/>myTextArea.depthChild0._visible = false; <br/>TestArea组件背景透明，边框不透明。 <br/>_global.styles.TextArea.backgroundColor = undefined; <br/>TestArea组件背景和边框的透明度。 <br/>myTextArea.depthChild0._alpha = 0; <br/><br/><br/>TestArea组件背景颜色。 <br/>_global.styles.TextArea.backgroundColor = 0xff0000; <br/><br/>TestArea组件边框颜色。 <br/>myTextArea.setStyle(&#34;borderColor&#34;,&#34;0xff0000&#34;);//下 <br/>myTextArea.setStyle(&#34;highlightColor&#34;,&#34;0xff0000&#34;);//上 <br/>myTextArea.setStyle(&#34;color&#34;,&#34;0xff0000&#34;);//字 <br/>myTextArea.setStyle(&#34;shadowColor&#34;,&#34;0xff0000&#34;);//下 <br/>myTextArea.setStyle(&#34;borderCapColor&#34;,&#34;0xff0000&#34;);//左右外 <br/>myTextArea.setStyle(&#34;shadowCapColor&#34;,&#34;0xff0000&#34;);//左右内 <br/><br/><br/>注意 : 如果您使用 cr&#101;ateClassObject() 方法来创建 TextArea 实例，则 wordWrap 的默认值为 false。<br/>------------------------------------------------------------------------------------------------ <br/>*** TextArea *** 类的方法摘要 : 没有 TextArea 类专用的方法。<br/>----------------------------------------------------------------------------------------------- <br/>TextArea.editable ---------------- 一个布尔值，它指示该字段是 (true) 否 (false) 可编辑。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.hPosition----------------&nbsp;&nbsp;定义文本在字段中的水平位置。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.hScrollPolicy ----------- 指示水平滚动条是始终打开 (&#34;on&#34;)、从不打开 (&#34;off&#34;) 还是在需要时打开 (&#34;auto&#34;)。<br/>----------------------------------------------------------------------------------------------- <br/>TextArea.html -------------------- 一个布尔值，它指示文本区域的内容是否可以采用 HTML 格式。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.length ------------------ 只读；文本区域中的字符数。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.maxChars ---------------- 文本区域最多可以容纳的字符数。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.maxHPosition ------------ 只读；TextArea.hPosition 的最大值。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.maxVPosition ------------ 只读；TextArea.vPosition 的最大值。<br/>----------------------------------------------------------------------------------------------- <br/>TextArea.password ---------------- 一个布尔值，它指示字段是 (true) 否 (false) 为密码字段。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.restrict ---------------- 用户可在文本区域中输入的字符集。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.styleSheet -------------- 将样式表附加到指定的 TextArea 组件。<br/>/**<br/> 要求：<br/>&nbsp;&nbsp;- 舞台上的 TextArea 实例（实例名：my_ta）<br/>var my_ta:mx.controls.TextArea;<br/>my_ta.setSize(320, 240);<br/>// 创建新的 StyleSheet 对象。<br/>var my_styles:TextField.StyleSheet = new TextField.StyleSheet();<br/>my_styles.setStyle(&#34;html&#34;, {fontFamily:&#34;Arial,Helvetica,sans-serif&#34;, fontSize:&#34;12px&#34;, color:&#34;#0000FF&#34;});<br/>my_styles.setStyle(&#34;body&#34;, {color:&#34;#00CCFF&#34;, textDecoration:&#34;underline&#34;});<br/>my_ta.styleSheet = my_styles;<br/>my_ta.html = true;<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.text -------------------- TextArea 组件的文本内容。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.vPosition --------------- 一个数字，它指示垂直滚动位置。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.vScrollPolicy ----------- 指示垂直滚动条是始终打开 (&#34;on&#34;)、从不打开 (&#34;off&#34;) 还是在需要时打开 (&#34;auto&#34;)。<br/>-----------------------------------------------------------------------------------------------&nbsp;&nbsp;<br/>TextArea.wordWrap ---------------- 一个布尔值，它指示文本是 (true) 否 (false) 自动换行。<br/>/**<br/> 要求：<br/>&nbsp;&nbsp;- 舞台上的 TextArea 实例（实例名：my_ta）<br/>var my_ta:mx.controls.TextArea;<br/>my_ta.setSize(320, 240);<br/>my_ta.wordWrap = false;<br/>my_ta.vScrollPolicy = &#34;off&#34;;<br/>var my_lv:LoadVars = new LoadVars();<br/>my_lv.onData = function(src:String) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;if (src != undefined) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;my_ta.text = src;<br/>&nbsp;&nbsp;&nbsp;&nbsp;} else {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;my_ta.text = &#34;Error loading text.&#34;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>};<br/>my_lv.load(&#34;<a href="http://www.helpexamples.com/flash/lorem.txt" target="_blank" rel="external">http://www.helpexamples.com/flash/lorem.txt</a>&#34;);<br/>*/<br/>-----------------------------------------------------------------------------------------------<br/>*** TextArea 类的事件摘要 ***<br/>-----------------------------------------------------------------------------------------------<br/>TextArea.change ------- 通知侦听器文本已更改。<br/>/**<br/> 要求：<br/>&nbsp;&nbsp;- 舞台上的 TextArea 实例（实例名：my_ta）<br/>var my_ta:mx.controls.TextArea;<br/>var changeCount_num:Number = 0;<br/>var taListener:Object = new Object();<br/>taListener.change = function(evt_obj:Object) {<br/> changeCount_num++;<br/> trace(&#34;Text has changed &#34; + changeCount_num + &#34; times now!&#34;);<br/> trace(&#34;It now contains: &#34; + evt_obj.target.text);<br/> trace(&#34;&#34;);<br/>};<br/>my_ta.addEventListener(&#34;change&#34;, taListener);<br/>*/<br/>----------------------------------------------------------------------------------------------- <br/>/**<br/> 要求：<br/>&nbsp;&nbsp;- 舞台上的 TextArea 实例（实例名：my_ta）<br/>my_ta.setSize(320, 240);<br/>my_ta.move(10, 10);<br/>TextArea.scroll ------- 通知侦听器文本已滚动。<br/>my_ta.addEventListener(&#34;scroll&#34;, doScroll);<br/>function doScroll(evt_obj:Object):Void {<br/>&nbsp;&nbsp;&nbsp;&nbsp;trace(&#34;target:&nbsp;&nbsp;&nbsp;&nbsp;&#34; + evt_obj.target);<br/>&nbsp;&nbsp;&nbsp;&nbsp;trace(&#34;type:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#34; + evt_obj.type);<br/>&nbsp;&nbsp;&nbsp;&nbsp;trace(&#34;direction: &#34; + evt_obj.direction);<br/>&nbsp;&nbsp;&nbsp;&nbsp;trace(&#34;position:&nbsp;&nbsp;&#34; + evt_obj.position);<br/>&nbsp;&nbsp;&nbsp;&nbsp;trace(&#34;&#34;);<br/>}<br/>*/<br/>----------------------------------------------------------------------------------------------- <br/>]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=267</link>
			<title><![CDATA[flash如何获取地址栏的字符]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Mon,01 Sep 2008 11:00:28 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=267</guid>
		<description><![CDATA[首先通过js代码获取地址栏的数据 <br/><br/><br/>然后js与Flash 进行通信.. <br/><br/><br/>代码1: <br/>js得到地址栏数据 <br/>function GetQueryString(name) <br/>{ <br/>var reg = new RegExp(&#34;(^|&amp;)&#34;+ name +&#34;=([^&amp;]*)(&amp;|$)&#34;); <br/>var r = window.location.search.substr(1).match(reg); <br/>if (r!=null) return unescape(r[2]); return null; <br/>} <br/><br/>调用: <br/>GetQueryString(键名) <br/>如 <br/>GetQueryString(&#34;kw&#34;) <br/><br/>代码2 <br/>js与Flash通信 <br/><br/>1.在OBJECT标签中,插入id=&#34;myFlash&#34; <br/><br/>2.在EMBED标签中,插入name=&#34;myFlash&#34;和swLiveConnect=&#34;true&#34;,确保没有使用id属性 <br/><br/>3.js <br/>&lt;SCRIPT LANGUAGE=JavaScript&gt; <br/>&lt;!-- <br/>function GetQueryString(name) <br/>{ <br/>var reg = new RegExp(&#34;(^|&amp;)&#34;+ name +&#34;=([^&amp;]*)(&amp;|$)&#34;); <br/>var r = window.location.search.substr(1).match(reg); <br/>if (r!=null) return unescape(r[2]); return null; <br/>} <br/><br/>window.document.myFlash.SetVariable(&#34;kw&#34;, GetQueryString(&#34;kw&#34;)); <br/>} <br/>//--&gt; <br/>&lt;/SCRIPT&gt; <br/><br/>4.在FLash就会有一个全局性质的变量kw,它的值就是地址栏的kw后面的值 <br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=266</link>
			<title><![CDATA[影片剪辑实例事件与方法 ]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Mon,01 Sep 2008 10:27:14 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=266</guid>
		<description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;影片剪辑实例事件onClipEvent(Event)与按钮事件on(MouseEvent)所触发的对象不同，前者是影片剪辑实例、后者是按钮。<br/>onClipEvent(event)指令 语法：onClipEvent(movieEvent){statements;} <br/>功 能：设置影片剪辑实例的触发事件。 <br/>其中，statements是触发影片剪辑实例时所要执行的程序语句；movieEvent是影片剪辑实例的事件类别；onClipEvent(movieEvent)指令中各事件整理如下表所示： 影片剪辑实例事件类别 说明 <br/>onClipEvent(load) 当影片剪辑实例第一次加载到时间轴时，会触发本事件一次。 <br/>onClipEvent(enterFrame) 当影片剪辑实例加载时间轴时，不论放映或停止状态或显示与否，都会不断的触发本事件。所以只要此影片剪辑被加载后，此事件会一直不断地执行，直到影片剪辑被删除为止。（所谓的删除是指影片剪辑实例不在所播放的帧上，避免与removeMovieClip删除影片剪辑实例指令混淆）&nbsp;&nbsp;&nbsp;&nbsp;<br/>onClipEvent(unload) 当影片剪辑实例被删除时，会触发本事件一次。 <br/>onClipEvent(mouseDown) 当鼠标左键被按下时，会触发本事件一次。 <br/>onClipEvent(mouseUp) 当被按下的鼠标左键被放开时，会触发本事件一次。 <br/>onClipEvent(mouseMove) 只要在场景中移动鼠标，就会不断触发本事件。 <br/>onClipEvent(KeyDown) 当计算机侦测到有键盘被按下时，就会触发本事件。若已按下的键一直没有松开，本事件就会一直处于被触发状态。 <br/>onClipEvent(KeyUp) 当计算机侦测到已按下的键盘被松开时，就会触发本事件一次。 <br/>onClipEvent(data) 若用loadVariable或loadMovie指令在其他影片剪辑实例事件中加载数据，当数据加载完成时会触发本事件一次。 <br/>&nbsp;&nbsp;&nbsp;&nbsp;影片剪辑实例所提供的方法不少，例如：play、gotoAndPlay、gotoAndStop在前面学习中大家已经比较熟悉了。下面再介绍几个影片剪辑实例常用的方法：<br/>一、startDrag方法： 语法1：startDrag(目标[,锁定[,左，上，右，下]]); <br/>语法2：anyMovieClip.startDrag([锁定,左，上，右，下]); <br/>功 能：设置影片剪辑实例可被鼠标拖曳，以及可拖曳的范围。 <br/>其中，目标和anyMovieClip指被拖曳的影片剪辑实例的路径和名称；锁定可设为true或false。若为true则表示对象被拖曳时鼠标指针会自动指到影片剪辑实例的中心点；若为false则表示对象被拖曳时鼠标指针不会指到影片剪辑实例的中心点。左、上、右、下指允许影片剪辑实例被拖曳的范围，其中左右为左边界、右边界的X轴坐标；上下为上边界、下边界的Y轴坐标。<br/>二、stopDrag方法： 语法：anyMovieClip.stopDrag(); <br/>功 能：结束用startDrag指令所下达的拖曳动作。 <br/>三、duplicateMovieClip方法：<br/>语法1：duplicateMovieClip(目标,新名称,深度); <br/>语法2：anyMovieClip.duplicateMovieClip(新名称,深度); <br/>功 能：复制影片剪辑实例。 <br/>其中，目标指被用来复制的来源影片剪辑实例；新名称指所复制完成新影片剪辑实例的名称；depth指堆叠参数，用来指定新完成的对象与其他对象重叠时的显示层次，depth值越大时所显示的越上层。若有两个显示层次相同的影片剪辑实例，则先复制的影片剪辑实例会被后建立的取代。<br/>注意：<br/>（1）新复制成功的影片剪辑实例必须设置其坐标位置才会在场景中显示，同时也可以使用setProperty()设置其他属性，如：透明度、旋转角度等。<br/>（2）random(value)函数。可以随机产生0~(value-1)之间的整数随机数。如：random(100)可产生一个0~99之间的随机整数。<br/>四、attachMovie方法： 语法：anyMovieClip.attachMovie(idname,newname,depth); <br/>功 能：在影片甲对象上附贴一个从图库中复制出来的乙影片剪辑实例。 <br/>其中,anyMovieClip指在场景中存在的甲影片剪辑实例；idname指在图库内要附加到舞台上甲影片剪辑的乙影片剪辑元件的链接名称；newname指所复制完成要贴附在甲对象上的乙影片剪辑实例名称；depth指贴附anyMovieClip对象的堆叠参数，depth值越大时贴附对象会在越上层显示。<br/>注意：<br/>1、idName 库中要附加到舞台上甲影片剪辑的乙影片剪辑元件的链接名称。要把它和库中显示的元件名区别开，元件名只是个记号，编程时是用不到的。 <br/>2、有关attachMovie的应用，可利用一个隐形（透明）的影片剪辑来贴附其他影片剪辑实例，可以利用attachMovie指令来“变身”，如同一个角色不断换外套一样，在游戏应用上很方便。<br/>3、使用 removeMovieClip 或 unloadMovie 动作或方法可删除用 attachMovie 附加的影片。 <br/>五、removeMovieClip方法： 语法1：removeMovieClip(目标); <br/>语法2：anyMovieClip.removeMovieClip(); <br/>功 能：删除用duplicateMovieClip所复制的影片剪辑实例对象。 <br/>六、swapDepths方法 语法1：anyMovieClip.swapDepths(深度); <br/>语法2：anyMovieClip.swapDepths(目标); <br/>功 能：交换影片剪辑实例显示的层次。 <br/>其中，深度值越大所显示的越上层；目标指将目标影片剪辑实例的层次作为anyMovieClip的现实层次。<br/>七、loadMovie方法 语法1：loadMovie(url,target/location); <br/>语法2：anyMovieClip.loadMovie(url); <br/>功 能：加载外部动画文件(.swf) <br/>1、url：是外部动画文件(.swf)的url地址。<br/>2、target、anyMovieClip：要置放外部动画文件的影片剪辑实例，所置放的外部动画文件的左上角会对齐影片剪辑实例的旋转中心点。<br/>3、location：置放外部动画文件的显示层次。层次越高就会在越上层显示。最下层的location为0，为主场景所有。若外部动画的层次为0，则主场景的显示会被取代。<br/>八、unloadMovie方法 语法：unloadMovie(location); <br/>功 能：删除用loadMovie(url,location)格式所加载的外部动画文件(.swf)。 <br/>注意：通过loadMovie()和unloadMovie()方法我们可以在一个.swf影片文件中加载和卸载其他.swf影片文件，现实中我们往往需要在已经加载的影片文件中相互传递文件或变量值，值得注意的是需明确各个对象所在的层次。 <br/>]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=265</link>
			<title><![CDATA[duplicateMovieClip和removeMovieClip]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Wed,27 Aug 2008 16:09:55 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=265</guid>
		<description><![CDATA[①duplicateMovieClip和removeMovieClip应用；②_visible属性应用；③数组应用。 <br/><br/>　　复制影片剪辑语句duplicateMovieClip也是在Flash AS 中应用非常多的语句，许多精彩的特效都离不开这个语句，其语法格式如下：<br/><br/>　　duplicateMovieClip(目标, 新名称, 深度)<br/><br/>　　“目标”参数为要进行复制的目标影片剪辑。<br/><br/>　　“新名称” 参数为新复制的影片剪辑的唯一标识符。<br/><br/>　　“深度” 参数为新复制的影片剪辑的唯一深度级别。<br/><br/>　　removeMovieClip是与duplicateMovieClip经常配合使用的语句，其作用是用来删除指定的影片剪辑，格式如下：<br/><br/>　　removeMovieClip(目标)<br/><br/>　　“目标”参数为用 duplicateMovieClip() 创建的影片剪辑实例的目标路径。或者是用 MovieClip.attachMovie() 或 MovieClip.duplicateMovieClip() 创建的影片剪辑的实例名称。<br/><br/>　　这一节还要用到一个“_visible”属性，它返回的是一个用“true”或者“false” 表示的布尔值，用于指令特定的影片剪辑或者按钮对象可见还是不可见，rue为可见，false为不可见。也可以用1或者0表示，1表示可见，0表示不可见。<br/>]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=264</link>
			<title><![CDATA[onClipEvent 处理函数]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Tue,26 Aug 2008 17:01:26 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=264</guid>
		<description><![CDATA[onClipEvent(movieEvent:Object) {// your statements here}触发为特定影片剪辑实例定义的动作。 <br/><br/>可用性：Flash Player 5；ActionScript 1.0 <br/><br/>参数<br/>movieEvent:Object - movieEvent 是一个称为事件 的触发器。当事件发生时，执行该事件后面大括号 ({}) 中的语句。可以为 movieEvent 参数指定下面的任一值： <br/><br/>load 影片剪辑一旦被实例化并出现在时间轴中，即启动此动作。 <br/>unload 在从时间轴中删除影片剪辑之后，此动作即在第 1 帧中启动。在将任何动作附加到受影响的帧之前处理与 Unload 影片剪辑事件关联的动作。 <br/>enterFrame 以影片剪辑的帧频连续触发该动作。在将任何帧动作附加到受影响的帧之前处理与 enterFrame 剪辑事件关联的动作。 <br/>mouseMove 每次移动鼠标时启动此动作。使用 _xmouse 和 _ymouse 属性来确定鼠标的当前位置。 <br/>mouseDown 当按下鼠标左键时启动此动作。 <br/>mouseUp 当释放鼠标左键时启动此动作。 <br/>keyDown 当按下某个键时启动此动作。使用 Key.getCode() 检索有关最后按下的键的信息。 <br/>keyUp 当释放某个键时启动此动作。使用 Key.getCode() 方法检索有关最后按下的键的信息。 <br/>data 在 loadVariables() 或 loadMovie() 动作中接收到数据时启动该动作。当与 loadVariables() 动作一起指定时，data 事件只在加载最后一个变量时发生一次。当与 loadMovie() 动作一起指定时，则在检索数据的每一部分时，data 事件都重复发生。 <br/>示例<br/>下面的示例将 onClipEvent() 与 keyDown 影片事件一起使用，旨在附加到影片剪辑或按钮。keyDown 影片事件通常与 Key 对象的一个或多个方法和属性一起使用。下面的脚本使用 Key.getCode() 找出用户按下了哪个键；如果按下的键与 Key.RIGHT 属性相匹配，则播放头会转到下一帧；如果按下的键与 Key.LEFT 属性相匹配，则播放头会转到上一帧。 <br/><br/>onClipEvent (keyDown) <br/>{ <br/>if (Key.getCode() == Key.RIGHT) <br/>{ <br/>this._parent.nextFrame(); <br/>} <br/>else if (Key.getCode() == Key.LEFT) <br/>{ <br/>this._parent.prevFrame(); <br/>}<br/>}<br/><br/>下面的示例将 onClipEvent() 与 load 和 mouseMove 影片事件一起使用。xmouse 和 ymouse 属性在鼠标每次移动时跟踪鼠标的位置，鼠标位置显示在运行时创建的文本字段中。 <br/><br/>onClipEvent (load) <br/>{<br/> this.cr&#101;ateTextField(&#34;coords_txt&#34;, this.getNextHighestDepth(), 0, 0, 100, 22); coords_txt.autoSize = true; <br/>coords_txt.sel&#101;ctable = false;<br/>}<br/>onClipEvent (mouseMove) <br/>{ <br/>coords_txt.text = &#34;X:&#34;+_root._xmouse+&#34;,Y:&#34;+_root._ymouse;<br/>}]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=261</link>
			<title><![CDATA[Flash常用代码集锦 ]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Tue,26 Aug 2008 10:11:25 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=261</guid>
		<description><![CDATA[Flash常用代码集锦 [2005-9-2]<br/>xcsxyq 发表在 收集<br/>--------------------------------------------------------------------------------<br/> <br/>1、用flash 做那种弹出的小窗口<br/>分两步： <br/>给flash中的按钮加入如下action: <br/>on (release) { <br/>getURL (&#34;javascript:MM_openBrWindow(&#39;newweb.htm&#39;,&#39;&#39;,&#39;width=600,height=100&#39;)&#34;); <br/>} <br/>在HTML页面的...之间加入下面的javascript代码. <br/><br/><br/>2、如何使得flash一打开就是全屏？<br/>fscommand(&#34;fullscreen&#34;,true)<br/>如何不能使用右键?<br/>fscommand (&#34;showmenu&#34;, &#34;false&#34;);<br/><br/>3、用命令载入一个动画，我需要确定载入动画在画面中的位置，用什么语言来设置？<br/>例如载入名为dd.swf的动画，我要确定这个动画的中心位置在（205，250），该怎么设置？<br/>在要加载动画的那钟加入<br/>loadMovie(&#34;dd.swf&#34;, &#34;a&#34;);<br/>a._x=205;<br/>a._y=250;<br/>你得先做一个空的MC起名叫&#34;a&#34;，导入时,在右下角也起名为a<br/><br/>4、当鼠标经过时动画播放到某处<br/>on (rollover) {<br/>gotoAndPlay(10);<br/>}<br/>当鼠标按下时动画播放到某处<br/>on (release) {<br/>gotoAndPlay(1);<br/>}<br/><br/>5、播完动画后自动跳到某网页<br/>getURL(&#34;siteindex.htm&#34;, _self);<br/><br/>6、设为首页<br/>on (release) { <br/>getURL(&#34;javascript:void(document.links.style.behavior=&#39;url(#default#homepage)&#39;);void document.links.setHomePage (&#39;<a href="http://www.flash8.net/" target="_blank" rel="external">http://www.flash8.net/</a>&#39;)&#34;, &#34;_self&#34;, &#34;POST&#34;); <br/>} <br/><br/>注意要将网页中的flash的ID号命名为&#34;links&#34;<br/><br/>加入收藏夹 <br/>on (release) { <br/>getURL(&#34;javascript:void window.external.AddFavorite(&#39;<a href="http://www.163.com" target="_blank" rel="external">http://www.163.com</a>&#39;,&#39;网页&#39;);&#34;, &#34;_self&#34;, &#34;POST&#34;); <br/>} <br/><br/>7、关于随机数的技巧<br/>用来产生6--20之间的5个不重复的随机数: <br/>1):首先产生一个随机数,放在数组对象中的第一个位置; <br/>2):产生一个新的随机数. <br/>3):检查新产生的随机数和所有目前已产生的随机数是否相同,若是相同则返回(2),否则返回(4) <br/>4):将新的随机数加入数组对象中下一个数组元素内. <br/>5):检查数组对象个数是否已达到5个,若是跳到(6),否则返回(2) <br/>6):结束. <br/>AS如下: <br/>data1=newArray(5); <br/>tot=1; <br/>data1=[tot-1]=random(20-6+1)+6; <br/>do{ <br/>gen_data=random(20-6+1)+6; <br/>reapeat_data=0; <br/>for(i=0,i&lt;=tot-1;i++){ <br/>if(gen_data==data <br/>reapeat_data=1; <br/>break; <br/>} <br/>} <br/>if(reapeat_data==0){ <br/>tot++ <br/>data[tot-1]=reapeat_data; <br/>} <br/>}while(tot&lt;5); <br/>trace(data1); <br/><br/>8 、如何使得flash一打开就是全屏的<br/>这里说的方法只是用于flash Player (fp)<br/><br/>9 、如何禁止右键菜单<br/>fscommand的方法还是只能适用于fp，在网页中使用还是必须添加额外的参数<br/><br/>或者用最简单的一句as，在fp和网页中均适用：<br/>Stage.showMenu=false;<br/><br/>10、载入动画的问题<br/>loadMovie(&#34;dd.swf&#34;, a); //这里没有引号~<br/><br/>11、播完动画后自动跳到某网页<br/>getURL(&#34;siteindex.htm&#34;, &#34;_self&#34;); //这里有引号滴~&nbsp;&nbsp;<br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=233</link>
			<title><![CDATA[getURL用 POST 发送变量竟然使用get发送?]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Tue,08 Jul 2008 11:08:42 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=233</guid>
		<description><![CDATA[下面的 ActionScript 使用 POST 在 HTTP 标头中发送变量。一定要在浏览器窗口中测试文档，因为变量可能是使用 GET 发送的：<br/><br/>var firstName:String = &#34;Gus&#34;;<br/>var lastName:String = &#34;Richardson&#34;;<br/>var age:Number = 92;<br/>getURL(&#34;<a href="http://www.macromedia.com" target="_blank" rel="external">http://www.macromedia.com</a>&#34;, &#34;_blank&#34;, &#34;POST&#34;);<br/><br/>//<br/>//<br/>成功调用 send() 方法总可以始终打开一个新的浏览器窗口或替换现有窗口或帧中的内容。如果您更希望向服务器发送信息并继续播放 SWF 文件，而不打开一个新窗口或替换窗口或帧中的内容，则应使用 <br/><br/>LoadVars.sendAndLoad()。]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=230</link>
			<title><![CDATA[如何解决Flash跨域问题]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Thu,19 Jun 2008 12:58:36 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=230</guid>
		<description><![CDATA[直接在flash中测试影片不会出现跨域问题，但如果Flash发布的swf文件，需要入下方法解决。<br/><br/>建立一个crossdomain.xml文件放到被访问文件所在服务器的根目录下。<br/><br/><br/>以下是xml的代码：<br/><br/>XML/HTML代码&lt;?xml version=&#34;1.0&#34;?&gt;&nbsp;&nbsp; <br/>&lt;cross-domain-policy&gt;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&lt;allow-access-from domain=&#34;*&#34; /&gt;&nbsp;&nbsp; <br/>&lt;/cross-domain-policy&gt;&nbsp;&nbsp; <br/><br/>js与flash跨域调用:<br/><br/>需要在FLASH脚本调用处加上参数：&lt;param name=&#34;allowScriptAccess&#34; value=&#34;always&#34; /&gt;，该参数默认为：sameDomain。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;参数说明：<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; always 允许随时执行脚本操作。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; never 禁止所有脚本执行操作。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; samedomain 只有在 Flash 应用程序来自与 HTML 页相同的域时才允许执行脚本操作。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 所有 HTML 发布模板使用的默认值均为 samedomain。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 结果，还需要在flash里加上：System.security.allowDomain(&#34;*&#34;);（可以把*换成你要允许的域）。<br/>]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=226</link>
			<title><![CDATA[Boolean 数据类型]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Wed,28 May 2008 17:24:30 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=226</guid>
		<description><![CDATA[布尔值是 true 或 false 中的一个。ActionScript 也会在适当时将值 true 和 false 转换为 1 和 0。布尔值经常与 ActionScript 语句中通过比较来控制脚本流的逻辑运算符一起使用。 <br/><br/>下面的示例将一个文本文件加载到一个 SWF 文件中，如果文本文件加载不正确，则在&#34;输出&#34;面板中显示一条消息，如果成功加载，则显示各个参数。有关详细信息，请参见代码示例中的注释。<br/><br/>var my_lv:LoadVars = new LoadVars();<br/>//success 是一个布尔值<br/>my_lv.onLoad = function(success:Boolean) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;//如果 success 为 true，则输出 monthNames<br/>&nbsp;&nbsp;&nbsp;&nbsp;if (success) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;trace(my_lv.monthNames);<br/>&nbsp;&nbsp;&nbsp;&nbsp;//如果 success 为 false，则输出消息<br/>&nbsp;&nbsp;&nbsp;&nbsp;} else {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;trace(&#34;unable to load text file&#34;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>};<br/>my_lv.load(&#34;<a href="http://www.helpexamples.com/flash/params.txt" target="_blank" rel="external">http://www.helpexamples.com/flash/params.txt</a>&#34;);<br/>下面的示例检查用户是否在两个 TextInput 组件实例中输入了值。创建两个布尔变量 userNameEntered 和 isPasswordCorrect，如果这两个变量的求值结果都等于 true，则将一条欢迎消息赋值给 titleMessage String 变量。<br/><br/>// 在舞台上添加两个 TextInput 组件、一个 Label 和一个 Button 组件。<br/>// 三个组件实例都是严格数据类型<br/>var userName_ti:mx.controls.TextInput;<br/>var password_ti:mx.controls.TextInput;<br/>var submit_button:mx.controls.Button;<br/>var welcome_lbl:mx.controls.Label;<br/><br/>//隐藏标签<br/>welcome_lbl.visible = false;<br/><br/>// 创建一个侦听器对象，它与 Button 组件结合使用。<br/>// 单击 Button 时，检查用户名和密码。<br/>var btnListener:Object = new Object();<br/>btnListener.click = function(evt:Object) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;// 检查用户是否在 TextInput 中输入了至少一个字符<br/>&nbsp;&nbsp;&nbsp;&nbsp;// 实例和返回布尔值 true/false。<br/>&nbsp;&nbsp;&nbsp;&nbsp;var userNameEntered:Boolean = (userName_ti.text.length &gt; 0);<br/>&nbsp;&nbsp;&nbsp;&nbsp;var isPasswordCorrect:Boolean = (password_ti.text == &#34;vertigo&#34;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;if (userNameEntered &amp;&amp; isPasswordCorrect) {<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var titleMessage:String = &#34;Welcome &#34; + userName_ti.text + &#34;!&#34;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;welcome_lbl.text = titleMessage;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//显示标签<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;welcome_lbl.visible = true;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>};<br/>submit_button.addEventListener(&#34;click&#34;, btnListener);<br/>]]></description>
		</item>
		
			<item>
			<link>http://feng.kiyeer.net/article.asp?id=217</link>
			<title><![CDATA[Tween 类和 TransitionManager 类]]></title>
			<author>yong8868@163.com(feng)</author>
			<category><![CDATA[Flash]]></category>
			<pubDate>Tue,08 Apr 2008 09:44:09 +0800</pubDate>
			<guid>http://feng.kiyeer.net/default.asp?id=217</guid>
		<description><![CDATA[安装 Flash Basic 8 或 Flash Professional 8 后，还安装了两个功能强大的类：Tween 类和 TransitionManager 类。本节介绍如何对影片剪辑和 Macromedia V2 组件（包括在 Flash MX 2004 和 Flash 8 中）使用这些类，以便于轻松地向 SWF 文件中添加动画。<br/>如果使用 Flash Professional 8（仅 ActionScript 2.0）创建幻灯片演示文稿或表单应用程序，可以选择在幻灯片间添加不同转变的行为，这类似于创建 PowerPoint 演示文稿时的情况。使用 Tween 和 TransitionManager 类将此功能添加到屏幕应用程序，可以生成根据所选行为让屏幕动起来的 ActionScript 代码。<br/>&nbsp;&nbsp;&nbsp;&nbsp;在 Flash Basic 8 或 Flash Professional 8 中，除了将 Tween 和 TransitionManager 类用于基于屏幕的文档之外，还可以在别处使用。例如，可以将这些类用于 Macromedia Component Architecture 第 2 版的组件集，或用于影片剪辑。如果您希望改变 ComboBox 组件的动画方式，则可以使用 TransitionManager 类在菜单打开时添加一些缓动。&#34;缓动&#34;是动画运行期间的渐进加速和渐进减速效果，有助于使动画显得更逼真。您还可以使用 Tween 和 TransitionManager 类来创建自己的动画菜单系统，而不使用时间轴上的补间动画或通过编写自定义代码来创建。 <br/><br/>I、TransitionManager 类<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;Flash 包含十种过渡效果，您可以将这些效果应用于影片剪辑对象。所有过渡均可以通过包括可选的缓动方法进行自定义，并且大多数过渡接受使用多个可选参数以控制其效果的特定方面。&#34;缓动&#34;是指动画过程中的渐进加速或减速，它会使您的动画看起来更逼真。例如，一个球在刚开始运动阶段是以加速形式运动的，在接近停止到完全停止阶段是以减速形式运动的。关于此加速和减速有许多公式，它们可以对缓动动画进行更改。您可以使用 TransitionManager 来指定过渡并将其应用于影片剪辑对象，而不是直接调用过渡。<br/><br/>Flash 中包括以下过渡：<br/><br/>过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 方法&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 说明<br/>遮帘过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Blinds&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用逐渐消失或逐渐出现的矩形来显示影片剪辑对象。<br/>淡化过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Fade&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 淡入或淡出影片剪辑对象。<br/>飞行过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Fly&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 从某一指定方向滑入影片剪辑对象。<br/>光圈过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Iris&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用可以缩放的方形或圆形动画遮罩来显示或隐藏影片剪辑对象。<br/>照片过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Photo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使影片剪辑对象像放映照片一样出现或消失。<br/>像素溶解过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PixelDissolve&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用随机出现或消失的棋盘图案矩形来显示或隐藏影片剪辑对象。<br/>旋转过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Rotate&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 旋转影片剪辑对象。<br/>挤压过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Squeeze&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 水平或垂直缩放影片剪辑对象。<br/>划入/划出过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Wipe&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用水平移动的动画遮罩形状来显示或隐藏影片剪辑对象。<br/>缩放过渡&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Zoom&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 通过按比例缩放来放大或缩小影片剪辑对象。<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;若要使用 TransitionManager 类的方法和属性，您可以在两种方法中选择一种来创建新实例。最简单的方法是调用 TransitionManager.start() 方法，只须调用一次，就可以创建新的 TransitionManager 实例、指定目标对象、用一种缓动方法应用过渡并启动过渡效果。以下代码使用 TransitionManager.start() 方法：<br/><br/>mx.transitions.TransitionManager.start(myMovieClip_mc, {type:mx.transitions.Zoom, direction:mx.transitions.Transition.IN, duration:1, easing:mx.transitions.easing.Bounce.easeOut});<br/><br/>还可以通过使用 new 运算符来创建 TransitionManager 类的新实例。然后可以指定过渡属性，并通过调用 TransitionManager.startTransition() 方法在另一步中启动过渡效果。以下代码使用 TransitionManager.startTransition() 方法：<br/><br/>var myTransitionManager:mx.transitions.TransitionManager = new mx.transitions.TransitionManager(myMovieClip_mc);<br/><br/>myTransitionManager.startTransition({type:mx.transitions.Zoom, direction:Transition.IN, duration:1, easing:mx.transitions.easing.Bounce.easeOut});<br/><br/>II、Tween类<br/>&nbsp;&nbsp;&nbsp;&nbsp;Tween 类使您能够使用 ActionScript 指定目标影片剪辑的属性在若干帧数或秒数中为补间动画，从而在舞台上轻松地对影片剪辑进行移动、调整大小和淡入淡出操作。Tween 类还使您能够指定各种缓动方法。缓动是指动画过程中的渐进加速或减速，它会使您的动画看起来更逼真。例如，您创建的下拉列表组件的选项可能在接近动画的开始处时随着选项的出现而逐渐地增加速度，而在列表展开时速度减慢，直到结束动画时完全停止。Flash 提供了很多缓动方法（包括这种加速和减速的等式），它们会相应地更改缓动动画。<br/>此外，Tween 类还调用事件处理函数，以便您的代码在动画开始、结束、恢复或增加其补间属性值时能够进行响应。例如，在第一个补间调用其 Tween.onMotionStopped 事件处理函数（指示第一个补间已停止）时，可以开始另一个补间动画。<br/>当创建 Tween 类的新实例时，需要传递一些参数。您必须指明目标影片剪辑对象、补间将影响的影片剪辑的属性、补间的范围和用于计算补间的属性的缓动方法。<br/>mx.transitions.Tween 类的构造函数有以下参数名称和类型：<br/><br/>Tween( obj:Object, prop:String, func:Function, begin:Number, finish:Number, duration:Number, useSeconds:Boolean )<br/><br/>obj，Tween 实例所面对的影片剪辑对象。<br/>prop，要用值补间的 obj 中属性的字符串名称。<br/>func，计算补间对象属性值的缓动效果的缓动方法。<br/>begin，一个指示 prop（要补间的目标对象属性）的开始值的数字。<br/>finish，一个指示 prop（要补间的目标对象属性）的结束值的数字。<br/>duration，一个数字，指示补间动画的时间长度。如果省略，duration 会默认设置成无穷大。<br/>useSeconds，一个布尔值，如果相对于 duration 参数中指定的值为 true，则表示使用秒；如果为 false，则表示使用帧。<br/>当创建 Tween 类的实例时，使用 func 参数指定提供缓动计算的函数或方法。Flash 提供了五个缓动类，每个缓动类都有三个方法，这些方法指示过渡动画的以下哪一部分应用缓动效果：在动画的开始、结尾或开始和结尾。此外，带有 easeNone 方法的 None 缓动类可用于指示未使用缓动。<br/><br/>下表描述了这六个缓动计算类<br/>缓动类&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 说明<br/>Back&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在过渡范围外的一端或两端扩展动画一次，以产生从其范围外回拉的效果。<br/>Bounce&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在过渡范围的一端或两端内添加弹跳效果。弹跳数与持续时间相关，持续时间越长，弹跳数越多。<br/>Elastic&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 添加一端或两端超出过渡范围的弹性效果。弹性量不受持续时间影响。<br/>Regular&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在一端或两端添加较慢的运动。此功能使您能够添加加速效果、减速效果或这两种效果。<br/>Strong&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在一端或两端添加较慢的运动。此效果类似于 Regular 缓动类，但它更明显。<br/>None&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 添加从开始到结尾无任何减速或加速效果的相同的运动。此过渡也称为线性过渡。<br/><br/>这六种缓动计算类的每一种都有三个缓动方法，它们指明缓动效果应用于动画的哪个部分。此外，None 缓动类还有第四个缓动方法：easeNone。下表中描述了这些缓动方法：<br/>方法&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 说明<br/>easeIn&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在过渡的开始提供缓动效果。<br/>easeOut&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在过渡的结尾提供缓动效果。<br/>easeInOut&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在过渡的开始和结尾提供缓动效果。<br/>easeNone&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 指明不使用缓动计算。只在 None 缓动类中提供 ]]></description>
		</item>
		
</channel>
</rss>
