设为首页收藏本站
搜索
楼主: 夜飞鹰

flash专栏

[复制链接]

136

主题

9

好友

29万

积分

版主

Member

Rank: 27Rank: 27Rank: 27

发表于 2004-3-9 19:19:23 |显示全部楼层

flash专栏

loadmovie("url",level/target[,variables])参数:url要加载的swf文件或jpeg文件的绝对或相对url。target指向目标影片剪辑的路径。
举例:如果有一个文件是C:\111.swf。要调用,则用:loadmovie("c:\111.swf")。

13

主题

1

好友

4440

积分

见习战士

Member

Rank: 1

发表于 2004-3-10 12:28:35 |显示全部楼层

flash专栏


举例:如果有一个文件是C:\111.swf。要调用,则用:loadmovie("c:\111.swf ...
[/quote]
我也这样在c盘调用这个swf文件,可是不行啊,汗~~~~~~~

136

主题

9

好友

29万

积分

版主

Member

Rank: 27Rank: 27Rank: 27

发表于 2004-3-10 15:56:23 |显示全部楼层

flash专栏

说得不细,抱歉!
首先你要把你这个文件保存,然后把你要调用的这个SWF文件和你这个保存的文件放在一个目录中,然后用loadmovie("111.swf")。(111.swf是你要调用的文件)

13

主题

1

好友

4440

积分

见习战士

Member

Rank: 1

发表于 2004-3-27 19:23:59 |显示全部楼层

flash专栏

我的邮箱是zhangxianb@163.com

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-11 14:07:35 |显示全部楼层

flash专栏

第一步:打开Flash
第二步:首先把表盘画好(做的好看就行,比如我的^-^)
第三步:做三个影片剪辑,名称分别是 shizhen 、 fenzhen 、 miaozhen (自已随便,就画三条线就行了,注意粗细长短要有分别), 把三个表针底端对齐,并都指向12点。
第四步:在第一祯里写上如下AS(不明白回去看看帮助):
_root.onEnterFrame = function() {
var mydate = new Date();
setProperty("shizhen", _rotation, (mydate.getHours()+mydate.getMinutes()/60)*30);
setProperty("fenzhen", _rotation, (mydate.getMinutes()+mydate.getSeconds()/60)*6);
setProperty("miaozhen", _rotation, mydate.getSeconds()*6);
};
第五步:反复修改,做个有个性的。

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-11 14:12:11 |显示全部楼层

flash专栏

文字跟随鼠标
as:
zw="张文是一个老师!!!!";
zwc=zw.length;
var i=0;
while(i<zwc){
_root.createEmptyMovieClip("hhh"+i,i);
t=zw.substr(i,1);
with(_root["hhh"+i]){
createTextField("zwt",2,0,0,30,30);
zwt.text=t;
trace(zwt.text);}
i++
}
startdrag(hhh0,true);
_root.onEnterFrame=function(){
var n=1;
while(n<=_root.zwc){
_root["hhh"+n]._x +=5+(_root["hhh"+(n-1)]._x-_root["hhh"+n]._x)/3;
_root["hhh"+n]._y +=(_root["hhh"+(n-1)]._y-_root["hhh"+n]._y)/3;
n=n+1;
}}
_root.Mouse.hide();
  居然不能上传SWF文件,一定要发贴满100的,可惜,不过你把以上代码复制到FLASH中的第一楨就可以了!!!!


17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-12 11:44:10 |显示全部楼层

flash专栏

- Go to 跳转到指定的帧  
   - Play 播放  
   - Stop 停止  
   - Toggle High Quality 在高画质和低画质间切换  
   - Stop All Sounds 停止所有声音的播放  
   - Get URL 跳转至某个超联结  
   - FSCommand 发送FSCommand命令  
   - Load Movie 装载影片  
   - Unload Movie 卸载影片  
   - Tell Target 告知目标  
   - If Frame Is Loaded ..判断帧是否被完全载入  
   - On Mouse Event 鼠标事件
  。其他Actions。包括:
   - break 跳出循环
   - call 调用指定帧(一般喊有某个特定函数)
   - comment 注释
   - continue 继续循环
   - delete 删除一个对象(Object)中的变量
   - do while do while循环
   - duplicateMovieClip 复制MC
   - else 否则(与if联用)
   - else if 否则如果(与if联用)
   - evaluate 调用自定义函数(Function)
   - for for循环
   - for .. in 依次取得对象(Object)中的各个属性或者某个数组中的所有元素 
   - FSCommand 发送FSCommand命令
   - function 声明自定义函数
   - getURL 跳转至某个超联结
   - goto 跳转到指定的帧
   - if 如果
   - ifFrameLoaded ..帧是否完全被载入
   - include 读入外部的ActionScript程序文件(.as)
   - loadMovie 装载MC
   - loadVariables 转载外部文件中的数据,这些外部文件可以是文本文件,或者是由ASP/CGI等脚本返回的文本值
   - on 鼠标事件的触发条件
   - onClipEvent MC的事件触发程序
   - play 播放
   - print 输出到打印机
   - removeMovieClip 删除MC
   - return 在函数(function)中返回一个值
   - set variable 设定变量值
   - setProperty 设定属性
   - startDrag 开始拖动
   - stop 停止
   - stopAllSounds 停止所有声音的播放
   - stopDrag 停止拖动
   - swapDepths 交换两个MC的深度
   - tellTarget 指定Action命令生效的目标
   - toggleHighQuality 在高画质和低画质间切换
   - trace 跟踪调试
   - unloadMovie 卸载MC
   - var 声明局部变量
   - while 当..成立时..
   - with 对..对象(Object)做..
   。操作符( Operators)
   - ! 逻辑非操作
   - != 不等于
   - "" 字符串
   - % 取余数
   - && 逻辑与操作
   - () 括号
   - * 乘号
   - + 加号
   - ++ 变量自加一
   - - 减号
   - -- 变量自减一
   - / 除号
   - < 小于
   - <= 小于等于
   - <> 不等于
   - == 相等
   - > 大于
   - >= 大于等于
   - and 逻辑与
   - not 逻辑非
   - or 逻辑或
   - typeof 返回变量类型
   - void 实体,无返回
   - | | 逻辑或操作
  + Bitwise Operators 位操作符
   - & 位与操作
   - << 位左移
   - >> 位右移
   - >>> 位右移(无符号)
   - ^ 位异或操作
   - | 位或操作
   - ~ 补位操作
  + Compound Assign Operators 复合操作符
   - %= A%=B 等效于 A=A%B
   - &= A&=B 等效于 A=A&B
   - *= A*=B 等效于 A=A*B
   - += A+=B 等效于 A=A+B
   - -= A-=B 等效于 A=A-B
   - /= A/=B 等效于 A=A/B
   - <<= A<<=B 等效于 A=A<<B
   - >>= A>>=B 等效于 A=A>>B
   - >>>= A>>>=B 等效于 A=A>>>B
   - ^= A^=B 等效于 A=A^B
   - |= A|=B 等效于 A=A|B
  + String Operators 字符串操作符(注:实质上是ASCII的比较)
   - add 连接两个字符串
   - eq A eq B 字符串A值与字符串值B相等
   - ge A ge B 字符串A值大于等于字符串B值
   - gt A gt B 字符串A值大于字符串B值
   - le A le B 字符串A值小于等于字符串B值
   - lt A lt B 字符串A值小于字符串B值
   - ne A ne B 字符串A值不等于字符串B值
  + Functions 函数
   - Boolean 取表达式的布尔值(True 或 False)
   - escape 除去URL串中的非法字符,将其参数按照URL编码的格式转化为字符串(String)
   - eval 访问并计算表达式(expression)的值,并以字符串(String)的形式返回该值
   - false 布尔非值(0)
   - getProperty 获取属性
   - getTimer 获取从电影开始播放到现在的总播放时间(毫秒数)
   - getVersion 获取浏览器的FLASHPlayer的版本号
   - globalToLocal 场景(Scene)中的坐标转换成MC中的坐标
   - hitTest 测试一个点或者MC是否同另一个交叉(即冲突检测)
   - int 把十进制数值强制转换成整数
   - isFinite 测试数值是否为有限数
   - isNaN 测试是否为非数值
   - keycode 返回键盘按下键的键盘值(ASCII值)
   - localToGlobal MC中的坐标转换成场景(Scene)中的坐标
   - maxscroll 文本框的最大行度
   - newline 换行符
   - Number 将参数转换成数值其返回值有以下四种情况:
   如果 x 为一数字,则返回值即为该数字;如果 x 为一布尔数,则返回0或1;如果 x 为一字符串,则函数将x解释为一个指数形式的十进制数;如果x未定义,则返回0。
   - parseFloat 将字符串转换成浮点数
   - parseInt 将字符串转换成整数 
   - random 产生0到指定数间的随机数
   - scroll 文本框中的起始滚动行
   - String 将参数转换成字符串
   - targetPath 返回指定实例MC的路径字符串
   - true 布尔是值(1)
   - unescape 保留字符串中的%XX格式的十六进制字符
   + String Functions 字符串函数
   - chr 将ASCII码转换成相应字符
   - length 返回字符串的长度
   - mbchr 将ASCII/S-JIS编码转换成相应的多字节字符
   - mblength 返回多字节字符串的长度
   - mbord 将多字节字符转换成相应的ASCII/S-JIS编码
   - mbsubstring 截取多字节字符串中的字串
   - ord 将字符转换成ASCII码
   - substring 截取字符串中的子串
   + Properties 属性
   - _alpha Alpha值(透明度值)
   - _currentframe 在MC中的当前帧数
   - _droptarget 当使用Start drag拖动一个MC时,实时地返回该MC的绝对路径
   - _focusrect 高亮按钮或者某个当前区域的显示与否(True显示/Flase不显示)
   - _framesloaded 已载入的影帧数
   - _height MC的高度
   - _highquality 画质的高低(True高画质/False低画质)
   - _name MC的实例名  
   - _quality 当前画质(字符串值) LOW,MEDIUM,HIGH,BEST
   - _rotation MC旋转的角度(单位:度)
   - _soundbuftime 声音的缓冲区大小(默认值5,单位:秒)
   - _target MC的路径
   - _totalframes 总帧数
   - _url 电影被调用的URL地址
   - _visible 是否可视(True可视/False不可视)
   - _width MC的宽度
   - _x MC的x坐标
   - _xmouse 鼠标的x坐标
   - _xscale MC的X轴向缩放度
   - _y MC的y坐标
   - _ymouse 鼠标的y坐标
   - _yscale MC的y轴向缩放度
  + Objects 对象
   + Array 数组
    - concat 合并多个数组
    - join 将一个数组中的元素转化成字符串,并通过特定的分割符进行联结,并返回结果字符串
    - length 返回数组长度
    - new Array 新建数组对象
    - pop 出栈 (FILO 先入后出)
    - push 入栈 (入队列)
    - reverse 反相(颠倒数组,及第一个元素和最后一个元素互换……)
    - shift 出队列 (FIFO 先入先出)
    - slice 截取数组中的子串生成新的数组
    - sort 数组元素的排序
    - splice 从数组中指定元素起删除指定个数的元素或者删除指定元素
    - unshift 从数组头部插入一个元素
   + Boolean 布尔对象
    - new Boolean 新建布尔型对象
    - toString 将布尔型对象的值转换成字符串值
    - valueOf 获取布尔型对象的值(返回值为布尔型)
   + Color 颜色对象
    - getRGB 获取颜色值的RGB分量(返回值0xRRGGBB十六进制)
    - getTransform 获取颜色值的转换量(返回值 cxform 型) [不太清楚]
    - new Color 新建一颜色对象
    - setRGB 设置颜色值的RGB分量(参数为0xRRGGBB十六进制)
    - setTransform 设置颜色值的转换量(参数为 cxform 型) [不太清楚]
   + Date 时间和日期对象
    - getDate 获取当前日期(本月的几号)
    - getDay 获取今天是星期几(0-Sunday,1-Monday...)
    - getFullYear 获取当前年份(四位数字)
    - getHours 获取当前小时数(24小时制,0-23)
    - getMilliseconds 获取当前毫秒数
    - getMinutes 获取当前分钟数
    - getMonth 获取当前月份(注意从0开始:0-Jan,1-Feb...)
    - getSeconds 获取当前秒数
    - getTime 获取UTC格式的从1970.1.1 0:00以来的秒数
    - getTimezoneOffset 获取当前时间和UTC格式的偏移值(以分钟为单位)
    - getUTCDate 获取UTC格式的当前日期(本月的几号)
    - getUTCDay 获取UTC格式的今天是星期几(0-Sunday,1-Monday...)
    - getUTCFullYear 获取UTC格式的当前年份(四位数字)
    - getUTCHours 获取UTC格式的当前小时数(24小时制,0-23)
    - getUTCMilliseconds 获取UTC格式的当前毫秒数
    - getUTCMinutes 获取UTC格式的当前分钟数
    - getUTCMonth 获取UTC格式的当前月份(注意从0开始:0-Jan,1-Feb...)
    - getUTCSeconds 获取UTC格式的当前秒数
    - getYear 获取当前缩写年份(当前年份减去1900)
    - new Date 新建日期时间对象
    - setDate 设置当前日期(本月的几号)
    - setFullYear 设置当前年份(四位数字)
    - setHours 设置当前小时数(24小时制,0-23)
    - setMilliseconds 设置当前毫秒数
    - setMinutes 设置当前分钟数
    - setMonth 设置当前月份(注意从0开始:0-Jan,1-Feb...)
    - setSeconds 设置当前秒数
    - setTime 设置UTC格式的从1970.1.1 0:00以来的秒数
    - setUTCDate 设置UTC格式的当前日期(本月的几号)
    - setUTCFullYear 设置UTC格式的当前年份(四位数字)
    - setUTCHours 设置UTC格式的当前小时数(24小时制,0-23)
    - setUTCMilliseconds 设置UTC格式的当前毫秒数
    - setUTCMinutes 设置UTC格式的当前分钟数
    - setUTCMonth 设置UTC格式的当前月份(注意从0开始:0-Jan,1-Feb...)
    - setUTCSeconds 设置UTC格式的当前秒数
    - setYear 设置当前缩写年份(当前年份减去1900)
    - toString 将日期时间值转换成"日期/时间"形式的字符串值
    - UTC 返回指定的UTC格式日期时间的固定时间值
   + Key 键盘对象
    - BACKSPACE Backspace(<-)键
    - CAPSLOCK CapsLock键
    - CONTROL Ctrl键
    - DELETEKEY Delete(Del)键
    - DOWN 方向下键
    - END End键
    - ENTER Enter(回车)键
    - ESCAPE Esc键
    - getAscii 获取最后一个按下或松开的键的对应字符的Ascii码
    - getCode 获取最后一个被按下的键的键盘扫描码
    - HOME Home键
    - INSERT Insert(Ins)键
    - isDown 当指定键被按下时返回True值
    - isToggled 当Caps lock或者Num Lock键被锁定时返回真(True)
    - LEFT 方向左键
    - PGDN PageDown(PGDN)键
    - PGUP PageUp(PGUP)键
    - RIGHT 方向右键
    - SHIFT Shift键
    - SPACE 空格键
    - TAB Tab键
    - UP 方向上键
   + Math 数学函数对象
    - abs abs(n) 取n的绝对值
    - acos acos(n) n的反余弦(返回值单位:弧度)
    - asin asin(n) n的反正弦(返回值单位:弧度)
    - atan atan(n) n的反正切(返回值单位:弧度)
    - atan2 atan2(x,y) 计算x/y的反正切
    - ceil ceil(n) 取靠近n的上限的整数(向上取整)
    - cos cos(n) 取n的余弦(n的单位:弧度)
    - E Euler(欧拉)指数(约为2.718)
    - exp 指数
    - floor floor(n) 取靠近n的下限的整数(向下取整)
    - LN10 ln10(约等于2.302)
    - LN2 ln2(约等于0.693)
    - log 取自然对数(e为底)
    - LOG10E 10为底取E的对数(约等于0.434)
    - LOG2E 2为底取E的对数(约等于1.443)
    - max 返回两参数中的最大值
    - min 返回两参数中的最小值
    - PI 圆周率(约等于3.14159)
    - pow pow(x,y) x的y次方
    - random 产生0-1间的随机数
    - round 四舍五入取整
    - sin sin(n) 取n的正弦(n的单位:弧度)
    - sqrt 开根号
    - SQRT1_2 0.5开根号(约等于0.707)
    - SQRT2 2开根号(约等于1.414)
    - tan tan(n) 取n的正切(n的单位:弧度)
   + MovieClip 影片夹子对象
    - attachMovie 产生一个库中MC的实体并将它绑定到某个电影上
    - dupicateMovieClip 复制当前MC产生新的MC
    - getURL 使浏览器浏览指定页面
    - gotoAndPlay 跳转到指定帧并播放
    - gotoAndStop 跳转到指定帧并停止播放
    - loadMovie 引入一个外部电影到指定层
    - loadVariables 引入外部文件中的变量值
    - nextFrame 下一帧
    - play 播放
    - prevFrame 前一帧
    - removeMovieClip 删除用duplicateMovieClip创建的MC
    - startDrag 开始拖动MC
    - stop 停止MC的播放
    - stopDrag 停止拖动MC
    - unloadMovie 卸载由loadMovie引入的Movie
   + Mouse 鼠标对象
    - hide 隐藏鼠标指针
    - show 显示鼠标指针
   + Number 数值对象
    - MAX_value FLASH5 所允许的最大数值1.79769313486231 e 308
    - MIN_value FLASH5 所允许的最小数值5 e -324
    - NaN 是否为非数值(Not a Number)
    - NEGATIVE_INFINITY 是否为负数
    - new Number 新建数值对象
    - POSITIVE_INFINITY 是否为正数
    - toString 将数值转换成字符串
   + Object 对象
    - new Object 新建对象
    - toString 转换对象为字符串
    - valueOf 返回对象的值
   + Selection 选择区对象
    - getBeginIndex 获取可编辑文本区的起始位置,-1表示无可编辑文本区
    - getCaretIndex 获取当前的编辑位置,-1表示没有可编辑文本区
    - getEndIndex 获取可编辑文本区的结束位置,-1表示无可编辑文本区
    - getFocus 获取当前的激活文本区的文本变量名
    - setFocus 设置当前的激活文本区
    - setSelection 设置可编辑文本的起始位置和终止位置
   + Sound 声音对象
    - attachSound 绑定库中的一个声音
    - getPan 获取声音的混音值 [不太清楚]
    - getTransform 获取当前声音的变换量(返回值类型:sxform) [不太清楚]
    - getVolume 获取当前声音的音量(百分比)
    - new Sound 新建声音对象
    - setPan 设置声音的混音值 [不太清楚]
    - setTransform 设置当前声音的变换量(参数类型:sxform) [不太清楚]
    - setVloume 设置当前声音的音量(百分比)
    - start 开始播放当前声音
    - stop 停止播放当前声音
   + String 字符串对象
    - charAt 在指定的索引表中返回一个字符
    - charCodeAt 在指定的索引表中返回一个字符的代码
    - concat 联结合并多个字符串
    - fromCharCode 从字符代码组构造出一个新的字符串
    - indexOf 在字符串中寻找子串,返回子串起始位置或-1(-1表示未找到)
    - lastIndexOf 在字符串中寻找子串,返回子串终止位置或-1(-1表示未找到)
    - length 返回字符串的长度
    - new String 新建字符串对象
    - slice 返回字符串中指定截取的子串
    - split 根据限定符将字符串转换成一个数组
    - substr substr( start, length ) 返回从start开始,共length长的子串
    - substring substring( indexA, indexB ) 返回indexA..indexB之间的子串
    - toLowerCase 将字符串中的大写字符全部转换成小写
    - toUpperCase 将字符串中的小写字符全部转换成大写
   + XML 可扩充性标记语言对象
    - appendChild 添加一个子结点到指定的XML元素
    - attributes XML元素的属性数组
    - childNodes 一个XML元素的子结点数组
    - cloneNode 克隆(复制)当前结点
    - createElement 新建一个新的XML元素
    - createTextNode 新建一个新的XML文本结点
    - firstChild 返回当前XML结点的第一个子结点
    - hasChildNodes 当前XML结点是否有子结点(返回true有子结点/flash则无)
    - insertBefore 在一个指定的XML元素的子结点前插入一个新的子结点
    - lastChild 返回当前XML结点的最后一个子结点
    - load 从指定的URL把XML元素引入FLASH中
    - loaded 当XML元素引入或是发送同时引入FLASH中后,返回true值
    - new XML 新建一个XML对象
    - nextSibling 当前XML结点的下一个结点
    - nodeName 返回当前XML结点的名字
    - nodeType 返回当前XML结点的类型(1-元素,3-文本)
    - nodevalue 返回当前XML结点的值(text型返回文本)
    - onLoad 当引入或发送同时引入时触发事件
    - parentNode 返回当前XML结点的父结点
    - parseXML 将XML字符串转换成XML对象
    - previousSibling 当前XML结点的前一个结点
    - removeNode 从XML文本中删除结点
    - send 从FLASH中把一个XML元素发送到指定的URL地址
    - sendAndLoad 从FLASH中把一个XML元素发送到指定的URL地址同时引入XML结果
    - toString 把XML对象转换为XML字符串表达
   + XMLSocket XML套接口
    - close 关闭一个XML套接口
    - connect 连接一个XML套接口,指定URL,并定义其端口号
    - new XMLSocket 建立一个新的XML套接口
    - onClose 关闭XML套接口时触发事件
    - onConnect 连接XML套接口时触发事件
    - onXML 从服务器上获取XML时触发事件
    - send 发送XML给服务器

Flash密码也
1.防asv反编译:
在代码的前面加上:
function a ( ) { 0 ( ) }
2.保护swf文件加密:
在动画的第一帧加入检测url 的代码:
web=getproperty(" ", _url);
test=web.“indexof ”("your url ", "0.000000d");
if(test==“-1”){
gotoAndStop(88); //此帧数任一。
elseif( not(test=="-1")){
gotoAndPlay( getproperty(“ ”, -currentframe+1));
}
}

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-17 09:42:08 |显示全部楼层

flash专栏

什么是类,什么是对象,类的构造函数是一个特殊的函数,它创建了该类的新实例。
如:
构造函数Array()
list = new Array();
面向对象编程中这是一种规定:构造函数与类的名称相同.
类的构造函数通过new来调用。 new关键字使该函数生成一个新的对象并将其传递给外界
Array 构造函数址分灵活,有3种调用方式。
1.
myarray = new Array();
不带参数的构造函数,它将生成一个空的数组。
2.
myarray = new Array(3);
参数确定了数组的长度.
trace(myarray);     //输出:undefined,undefined,undefined
可以看到二个逗号,分开3元素;
3.
weekdays = new Array ("monday","tuesday","wednesday","thursday,"friday");
向构造函数传递二个事更多参数,每个参数成为数组的一个元素.
使用方便的方括号语法可以完成相同的目的:
weekdays = ["monday","tuesday","wednesday","thursday,"friday"];

有些构造函数必须传递一个或更多的参数,如Color对象总是针对一个影片而言的。
col = new Color (mc);

有三个内置类被称为可视类 Button  MovieClip TextField.独特之处是可以“手工”创建放在画面中
然而:mc = new MovieClip();
     btn = new Button();
     tf = new TextField();
这些是错误的
关键字new不能用来创建可视类的实例.
还有一些未公开的类就不谈了

在AS中,每个构造函数都有一个属性.称为prototype(原型),
trace (typeof Array.prototype);//typeof是什么不解释了,自己查一下,
trace (typeof Color.prototype);
trace (typeof String.prototype);//都输出object
可视类构造函数并不创建实例,然而也有各自的原型
trace (typeof MovieClip.prototype);
trace (typeof Button.prototype);
trace (typeof TextField.prototype);
但,静态内置对象,如 Math,Stage,Mouse没有原型
trace (typeof Math.prototype);//输出:undefined
所以不能成为构造函数,不能成为类.
原型对象是将一个类维系在一起的纽带。这句话好重要,一会再解释。
function Widget() {};
Widget就会被自动分配一个原型属性Widget.prototype
trace (typeof Widget.prototype);
我们可以在Widget.prototype中加入新的属性。如size(名字可以随便自己定)属性:
Widget.prototype.size = 10;
如果稍后我们创建一个新的Widget实例,它就会自动继承size属性能:
w =new Widget();//这就是widget实例;
//测试一下
trace (w.size);
所有ActionScript 类都具有这个特征,每个实例都从它的类构造函数的原型继承属性.
如:
所有的影片片段都继承自MovieClip.prototype
所有的数组都继承自Array.prototype
所有的文本域都继承自TextField.prototype.

明天继续讲类的实例之间的继承关系实际是怎样发生的?
就是解释上一句“原型对象是将一个类维系在一起的纽带”.........

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-17 09:42:39 |显示全部楼层

flash专栏

类的实例之间的继承关系实际是怎样发生的?
就是解释上一句“原型对象是将一个类维系在一起的纽带”.........
__proto__属性是关键.它是指向该原型的。当你调用对象的一个属性时,程序会
在对象本身当中查询该属性。如果没找到。就会__proto__所指向对象的属性当中
找。还会重复这个过程。沿着__proto__一级一级找,直到找到为止.
如:
arr = new Array();
trace (typeof arr.__proto__):              //输出:object
trace (arr.__proto__ == Array.prototype);  //输出:true
发现他们是相等的,前者指向后者.

为类添加方法。
MovieClip.prototype.haha = function() {
this._rotation = 30;
}
现在通过调用该方法就可以翻转任何一个影片。
mc.haha();

8

主题

1

好友

0

积分

见习战士

Member

Rank: 1

发表于 2004-11-24 20:38:22 |显示全部楼层

flash专栏

请问寒冷思雨:能具体解释一下吗:
setProperty("shizhen", _rotation, (mydate.getHours()+mydate.getMinutes()/60)*30);
setProperty("fenzhen", _rotation, (mydate.getMinutes()+mydate.getSeconds()/60)*6);
setProperty("miaozhen", _rotation, mydate.getSeconds()*6);

136

主题

9

好友

29万

积分

版主

Member

Rank: 27Rank: 27Rank: 27

发表于 2004-11-25 07:45:34 |显示全部楼层

flash专栏

setProperty("shizhen", _rotation, (mydate.getHours()+mydate.getMinutes()/60)*30);是设置小时,
setProperty("fenzhen", _rotation, (mydate.getMinutes()+mydate.getSeconds()/60)*6);是设置分钟
setProperty("miaozhen", _rotation, mydate.getSeconds()*6);是设置秒

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-25 10:05:03 |显示全部楼层

flash专栏

分别获设置时针、分针、秒针的旋转度数,因为他们都是影片剪辑,实例名分别为shizhen、fenzhen、miaozhen

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-25 10:10:57 |显示全部楼层

flash专栏

下面引用由xtellen2004/11/24 08:38pm 发表的内容:
请问寒冷思雨:能具体解释一下吗:
setProperty("shizhen", _rotation, (mydate.getHours()+mydate.getMinutes()/60)*30);
setProperty("fenzhen", _rotation, (mydate.getMinutes()+my ...
setProperty设置的意思
shizhen,是时针的实例名称
_rotation旋转的意思
(mydate.getHours()+mydate.getMinutes()/60)*30);把获取的系统时间转换成旋转度数
当然要不断刷新,因为时间在不断变化!!!

8

主题

1

好友

0

积分

见习战士

Member

Rank: 1

发表于 2004-11-25 21:28:27 |显示全部楼层

flash专栏

mydate.getHours()+mydate.getMinutes()/60)*30
这种算法是怎么想到的?

136

主题

9

好友

29万

积分

版主

Member

Rank: 27Rank: 27Rank: 27

发表于 2004-11-26 07:32:24 |显示全部楼层

flash专栏

按着圆的角度来计算。

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-26 09:40:51 |显示全部楼层

flash专栏

[这个贴子最后由寒冰思雨在 2004/11/26 09:41am 第 1 次编辑]
下面引用由xtellen2004/11/25 09:28pm 发表的内容:
mydate.getHours()+mydate.getMinutes()/60)*30
这种算法是怎么想到的?
getHours()取得小时数,getMinutes()取得分钟,getMinutes()/60转换成小时,因为每小时时针转动30度,所以乘30,明白了吗???

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-26 09:44:14 |显示全部楼层

flash专栏

[教程]如何正确理解_root/_level/depth的关系
出处:Flash8
作者:闪刀浪子
原文:http://www.flash8.net/dispbbs.asp?boardID=10&ID=58878
最近看到很多朋友发贴说不清楚_root和_level是干什么的,还有一个depth(深度)。
经常把人搞得晕乎。xx( 所以痛下决心一定要让各位深入了解。如果认为说的对的
给点掌声,认为说的错的扔点砖头顺带一起研究。
_level与路径
在开始教程之前先说一下文件的目录结构,因为这种结构与swf中的路径结构十分相似
先来看一张图。
在我的电脑里有一个mypath.swf的文件,它存放在我的电脑的C盘的downloads目录的
A star算法实例目录中。
我们访问的时候可以这么访问c:\downloads\A star算法实例\mypath.swf。这一长串路
径说明了mypath.swf在我的电脑里的存储位置。Flash中MC或者其他对象在swf中的存
储也遵循着同样的规则。
还是以上面为例,如果我们把我的电脑看成一个Flash文件,那么下面的C D E盘就相当
于flash中的_level0 _level1 _level2,downloads和A star算法实例这两个目录就相当于
两个MC,而mypath.swf就是最终的mc。和文件的访问方式相同在这里访问mypath.swf
你可以用_level.downloads.A star算法实例.(mypath.swf)来访问他了。是不是有点明白
了?不过注意上面的_level.downloads.A star算法实例.(mypath.swf)只是说明一下原理
真正使用时你不能用mypath.swf这种名字给MC命名的。
给张完整的图(有点丑陋,)

关于_root
_root相当于根,还是先用上面第一张图的文件结构来说明:
对于c:\downloads\A star算法实例\mypath.swf这个文件,它的根就是C盘。
针对c盘的任何一个文件她的根就是C盘,针对于任何一个D盘的文件她的根就是D盘
以此类推。
同样在flash里面也是如此。针对任何一个_leve0的Mc,它的_root就是_level0.依此类推
什么是depth
Depth表示的是深度,这与_level和_root是两码事。因为depth至于显示有关,Depth
越大,就显示在上面。而_level和_root的最重要的作用是用来识别MC在flash 中的路径
要注意的是_level是有各自默认的Depth,并且每个mc中都有自己的Depth
可以分配。
为什么说_level有各自默认的Depth。因为所有的_level(包括_level0、_level1、_level2......)
他们实际上都从属于一个更上一级的MC,大概就是SWF本身了。
_level0位于SWF的-16384这个位置
_level1位于SWF的-16383这个位置
依此类推,Flash大概支持955599999999个_level(具体的没有册出来),如果还是用
文件的方式来理解,那么就是说可以有955599999999左右的盘符。
如果你不想用系统对_level的默认深度你甚至可以交换_level0和level1的深度,别不信。
试试知道了
下面我们做一个例子说明一下
在flash中新开一个文件,
第一桢写入
loadMovie("logo.jpg",1); //这里的logo.jpg当然是填入你本地的任何一个jpg文件
然后新建一个层随便画点什么东西在,保证这个层一直存在到30桢,一定要保证新加载
的图片和这个层上面的东西重叠,否则无法看到效果的。
第15桢写入
trace("_level0 depth="+this.getDepth());
trace("_level1 depth="+_level1.getDepth());
this.swapDepths(1);
第30帧写入
trace("_level0 depth="+this.getDepth());
trace("_level1 depth="+_level1.getDepth());
stop();
好了运行以下,你可以看到当_level0与depth 1 交换时,_level0上的东西移到了_level1的上面
结果是
_level0 depth=-16384
_level1 depth=-16383
_level0 depth=1
_level1 depth=-16383
是不是很有意思
提示:各个level中必须有东西才可以trace,如果你没有使用loadMovie到_level1,那么trace(_level1.getDepth())是无效的
前面说到的每个MC拥有自己可以分配的depth,这也好理解。
就是说假如_level1中可以有自己的depth 1位置的MC,_level2中可以有自己的depth 1位置的MC。两个不会冲突,谁显示在最前面取决于_level2和_level1谁的depth 大
好了,就写这么多了。

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-26 09:49:37 |显示全部楼层

flash专栏

attachMovie()的中级应用!使用attachMovie()会将一个库中的有linkage的symbol调出来,这大家都是知道的(废话,帮助就是这么写的,还用你讲)。
不好意思,不要误会,我这里讲的不是一般用法::
首先,我先让大家做个实验,
先:
_root.createEmptyMovieClip("loader",1);
//这大家都知道什么意思吧,好,
_root.loader.loadMovie("a.swf",1);
//我现在将一个外部的a.swf装载到loader中!
//ok
//现在,如果我们在我们的文件里,再随便画一个图形,将其定义为movieClip,
//linkage也写上,暂且叫"shape"
//
//好了,现在你对loader使用attachMovie(),
loader.attachMovie("shape","ss",100);
//你会发现attachMovie()失效了?   WHY?
//仔细分析,原来是以前的loadMovie()捣的鬼!
//如果你讲这个linkage为"shape"的movieClip放到a.fla中(就是生成a.swf的fla文件)
//你会发现attachMovie()又可以用了!(别忘了a.swf重新export一下)
//结论:
//对一个movieClip使用loadMovie()后,他所面对的库,就是被load进来的swf中的库!
//......
//利用这个特点,我们可以。。
用法1:
如果你要将很多东西要重复的装载到一个swf中,你可以先将这个Lib装载到一个MovieClip中,然后使用duplicateMovieClip()命令!

17

主题

0

好友

3695

积分

见习战士

Member

Rank: 1

发表于 2004-11-26 09:50:12 |显示全部楼层

flash专栏

在attachSound的时候也是这样。
例如:在b.fla中,导出一个声音,标识符为“b_sound”,那么在b.fla中可以使用下面的的语句播放它
bb_sound=new Sound();
bb_sound.attachSound("b_sound")
bb_sound.start();
将b.fla导出成b.swf,播放成功(当然能够成功)。
如果有一个a.fla,然后在a.fla中使用loadMovie()加载b.swf,就会出现没有声音的情况。这是为什么呢?因为对于被载入的b.swf来说,他的父影片已经变成了a.swf,但是a.swf中并没有“b_sound”,b.swf找不到“b_sound”,自然也不会发声。
要解决这个问题,可以在a.fla中也导出一个“b_sound”。这样即使b.fla中不导出那个"b_sound",最终的a.swf也能够发声。但是如果在b.fla中不导出"b_sound",单独播放b.swf的时候就不能发声了(这也不一定是件坏事)。
  



9

主题

0

好友

2660

积分

见习战士

Member

Rank: 1

发表于 2005-2-17 05:31:49 |显示全部楼层

flash专栏

[这个贴子最后由阳光哥在 2005/02/17 05:51am 第 1 次编辑]

版主的flash技术很不错啊!希望与大家合作来发展现代教育技术——课程整合
您先看看我的设计和想法,再多提出意见和指导,切盼与你合作.我的网站是:http://www.flashempire.com/home/index.php?userid=1184216   
我信奉的格言是
    六个学会
学会合作   学会创新
学会选择   学会宽容
学会等待   学会分享
                 
         我    能    行
相 信 自 己 行 ,才 会 我 能 行;
别 人 说 我 行 ,努 力 才 能 行;
你 在 这 点 行 ,我 在 那 点 行;
今 天 若 不 行 ,明 天 争 取 行;
能 正 视 不 行 ,也 是 我 能 行;
不 但 自 己 行 ,帮 助 别 人 行;
互 相 支 持 行 ,合 作 大 家 行;
争 取 全 面 行 ,创 造 才 最 行。
          新课程改革心得                  
新课程之旅充满艰辛,新课程之路崎岖漫长,每一个人理性地对新课程进行选择。让我们在新课程改革实验的进程中携手共建、共进,共同用心浇灌教育的生命之树。愿新课改获得丰硕成果!
您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|人教网 ( 京ICP备05019902号

GMT+8, 2018-2-25 17:32

回顶部